EdX

Computational Thinking and Big Data (edX)

Computational Thinking and Big Data (edX)

Learn the core concepts of computational thinking and how to collect, clean and consolidate large-scale datasets. Computational thinking is an invaluable skill that can be used across every industry, as it allows you to formulate a problem and express a solution in such a way that a computer can effectively carry it out.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

In this course, part of the Big Data MicroMasters program, you will learn how to apply computational thinking in data science. You will learn core computational thinking concepts including decomposition, pattern recognition, abstraction, and algorithmic thinking.
You will also learn about data representation and analysis and the processes of cleaning, presenting, and visualizing data. You will develop skills in data-driven problem design and algorithms for big data.
The course will also explain mathematical representations, probabilistic and statistical models, dimension reduction and Bayesian models.
You will use tools such as R and Java data processing libraries in associated language environments.
This course is part of the Big Data MicroMasters program.

What you'll learn

  • Understand and apply advanced core computational thinking concepts to large-scale data sets
  • Use industry-level tools for data preparation and visualisation, such as R and Java
  • Apply methods for data preparation to large data sets
  • Understand mathematical and statistical techniques for attracting information from large data sets and illuminating relationships between data sets

Course Syllabus

Section 1: Data in R
Identify the components of RStudio; Identify the subjects and types of variables in R; Summarise and visualise univariate data, including histograms and box plots.

Section 2: Visualising relationships
Produce plots in ggplot2 in R to illustrate the relationship between pairs of variables; Understand which type of plot to use for different variables; Identify methods to deal with large datasets.

Section 3: Manipulating and joining data
Organise different data types, including strings, dates and times; Filter subjects in a data frame, select individual variables, group data by variables and calculate summary statistics; Join separate dataframes into a single dataframe; Learn how to implement these methods in mapReduce.

Section 4: Transforming data and dimension reduction
Transform data so that it is more appropriate for modelling; Use various methods to transform variables, including q-q plots and Box-Cox transformation, so that they are distributed normally Reduce the number of variables using PCA; Learn how to implement these techniques into modelling data with linear models.

Section 5: Summarising data
Estimate model parameters, both point and interval estimates; Differentiate between the statistical concepts or parameters and statistics; Use statistical summaries to infer population characteristics; Utilise strings; Learn about k-mers in genomics and their relationship to perfect hash functions as an example of text manipulation.

Section 6: Introduction to Java
Use complex data structures; Implement your own data structures to organise data; Explain the differences between classes and objects; Motivate object-orientation.

Section 7: Graphs
Encode directed and undirected graphs in different data structures, such as matrices and adjacency lists; Execute basic algorithms, such as depth-first search and breadth-first search.

Section 8: Probability
Determine the probability of events occurring when the probability distribution is discrete; How to approximate.

Section 9: Hashing
Apply hash functions on basic data structures in Java; Implement your own hash functions and execute, these as well as built-in ones; Differentiate good from bad hash functions based on the concept of collisions.

Section 10: Bringing it all together
Understand the context of big data in programming.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Excel avanzado: importación y análisis de datos (edX) EdX
Universitat Politècnica de València,UPValenciaX

Excel avanzado: importación y análisis de datos (edX)

Conoce técnicas y estrategias avanzadas para importar, consolidar y visualizar con Excel datos provenientes de cualquier fuente. En este curso de análisis e interpretación de datos te presentaremos técnicas avanzadas de importación de datos y estrategias diversas para consolidarlos y prepararlos una vez importados de forma que puedas extraer las conclusiones que necesitas (basadas en nuestra experiencia en el uso de Microsoft Excel y demostradas con casos reales).

Self Paced
Self-Paced
Introduction to Management Information Systems (MIS): A Survival Guide (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introduction to Management Information Systems (MIS): A Survival Guide (edX)

Gain the skills and knowledge needed to succeed in an MIS-dominated corporate world. This MIS course will cover supporting tech infrastructures (Cloud, Databases, Big Data), the MIS development/ procurement process, and the main integrated systems, ERPs, such as SAP®, Oracle® or Microsoft Dynamics Navision®, as well as their relationship with Business Process Redesign.

Self Paced
Self-Paced
Data Science: Capstone (edX) EdX
HarvardX,Harvard University

Data Science: Capstone (edX)

Show what you’ve learned from the Professional Certificate Program in Data Science. To become an expert data scientist you need practice and experience. By completing this capstone project you will get an opportunity to apply the knowledge and skills in R data analysis that you have gained throughout the series. This final project will test your skills in data visualization, probability, inference and modeling, data wrangling, data organization, regression, and machine learning.

Self Paced
Self-Paced
Introduction to Computer Science and Programming (edX) EdX
Tokyo Institute of Technology,TokyoTechX

Introduction to Computer Science and Programming (edX)

The term “Computation” refers to the action performed by a computer. A computation can be a basic operation and it can also be a sophisticated computer simultation requiring a large amount of data and substantial resources. This course aims at introducing learners with no prior knowledge to basics and key concepts of computer science. By following the lectures and exercises of this course you will have an understanding of algorithms and you will get a real experience of programming using the language Ruby.

Self Paced
Self-Paced
Herramientas de la Inteligencia de Negocios (edX) EdX
Galileo University,GalileoX

Herramientas de la Inteligencia de Negocios (edX)

Aprende el proceso de extraer y transformar data para generar insumos y tomar decisiones. Usa software, herramientas y sistemas de apoyo. Con este curso aprenderas a tomar decisiones empresariales exitosas. Para ello, aprenderas el proceso completo desde extraer data, hasta su integracion, visualizacion, depuracion, analisis y uso. Podr as transformar data cruda en insumos para la toma de decisiones. Dominaras el uso de software, herramientas y sistemas de apoyo.

Self Paced
Self-Paced
Visualización de Datos y Storytelling (edX) EdX
Tecnológico de Monterrey,TecdeMonterreyX

Visualización de Datos y Storytelling (edX)

Aprende en este curso en línea que es la visualización de datos, sus usos; los elementos que la conforman y la forma de poder utilizarla para el apoyo en la toma de las mejores decisiones para las empresas basadas en el análisis de datos. Digamos que necesitas comprender big data; miles o incluso millones de filas de datos, y tienes poco tiempo para hacerlo. los datos pueden provenir de tu equipo, en cuyo caso tal vez ya estés familiarizado con lo que estás midiendo y de los resultados que se esperan. O puede provenir de otro equipo, o tal vez de varios equipos a la vez, y estar completamente familiarizado.

Self Paced
Self-Paced
CS50's Introduction to Computer Science (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Computer Science (edX)

An introduction to the intellectual enterprises of computer science and the art of programming. This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50 teaches students how to think algorithmically and solve problems efficiently.

Self Paced
Self-Paced
How to Code: Complex Data (edX) EdX
The University of British Columbia,UBCx

How to Code: Complex Data (edX)

Learn how to design more complex programs, using new data structures, abstraction, and generative recursion. As your program requirements get more complex, you will find that simple additions to the design method make it easy to write well-structured and well-tested code that is easy to maintain. By learning how to capture common data and control structures using abstraction, your programs will get shorter and better tested.

Self Paced
Self-Paced
Data Science: Probability (edX) EdX
HarvardX,Harvard University

Data Science: Probability (edX)

Learn probability theory — essential for a data scientist — using a case study on the financial crisis of 2007–2008. In this course, you will learn valuable concepts in probability theory. The motivation for this course is the circumstances surrounding the financial crisis of 2007–2008. Part of what caused this financial crisis was that the risk of some securities sold by financial institutions was underestimated. To begin to understand this very complicated event, we need to understand the basics of probability.

Self Paced
Self-Paced
Software Construction: Object-Oriented Design (edX) EdX
The University of British Columbia,UBCx

Software Construction: Object-Oriented Design (edX)

Learn how to design large software systems that solve real-world problems using object-oriented design techniques. By the end of the course, you will have a solid foundation in Java and Object-Oriented Design, as well as many software development concepts that can be applied to any language.

Self Paced
Self-Paced