Introduction to Computational Thinking and Data Science
Objectives
After studying this course, you should be able to:
-
describe the skills that are involved in computational thinking.
-
define and use the concepts of modelling and abstraction.
-
understand the distinctive nature of computational thinking, when compared with engineering and mathematical thinking.
-
be aware of a range of applications of computational thinking in different applications.
General characterization
Code
100158
Credits
4.0
Responsible teacher
Berfin Sakallioglu
Hours
Weekly - Available soon
Total - Available soon
Teaching language
Portuguese. If there are Erasmus students, classes will be taught in English
Prerequisites
NA
Bibliography
- Gareth, J., Witten, D., Hastie, T., Tibshirani, R. (2017). An Introduction to Statistical Learning with Applications in R, Springer.
- Guntag, J. V. (2016). Introduction to Computation and Programming Using Python with Application to Understanding Data, MIT Press.
Teaching method
The course is based on lectures and laboratory classes. The lectures include the presentation of concepts and methodologies and discussion, as well as the demonstration of problem-solving. The laboratory classes are used for the resolution of some proposed exercises with the help of the professor. The seminar classes are for the presentation of projects.
Evaluation method
Assessment: 1st call: test 1 (30%); test 2 (30%); final project (25%);
2nd call: exam (75%); final project (25%)
Subject matter
The unit is organized into 10 Learning Units (LU):
LU1. Introduction to Statistical Learning
LU2. Stochastic Thinking, Probability, and Distributions
LU3. Linearity and Beyond
LU4. Resampling methods
LU5. Monte Carlo Simulation
LU6. Sampling and Confidence Intervals
LU7. Randomised Trials and Hypothesis Checking
LU8. Conditional probability and Bayesian Statistics
LU9. MCMC Basics: Metropolis-Hastings and Gibbs Sampling
LU10. Statistics and Lies