Analysis of data is part of our daily lives, irrespective of profession. A school teacher may wish to organise students into study groups based on their marks across subjects. A shop keeper may want to identify which customers to focus on when offering a category of products. A tour operator may require the best train connections for a trip involving multiple destinations. An editor may want to determine if the sentences in a paragraph are well formed. All these questions and many more can be answered by applying concepts from computational thinking to appropriate datasets. This book is aimed at teaching the set of skills required for these kinds of analyses.
This book provides the reader a firm grounding in the concepts underlying computational thinking -- iteration, variables and filtering. It then explains how to express these concepts using flowcharts and pseudocode, and, finally, how to apply this learning to glean useful information from datasets. In the process, the reader will also learn how to maintain and process information using structures like lists and dictionaries, and how to use abstractions like graphs and recursion to navigate complex relationships and hierarchical structures. At the end of this journey, readers should be able to spot the key patterns that occur repeatedly during computation, and apply these patterns to data based problems that they may encounter in their daily lives.