Python Programming @ NTNU
Course Content

In the capacity of an urban Geographic Information Systems (GIS) researcher, one is confronted with the formidable challenge of dealing with vast and diverse datasets, some of which may be dynamically generated in real-time (streaming data) rather than being static in nature. Consequently, the initial inquiry that naturally arises pertains to the methods and tools available for the processing of "Big Data" or "Streaming Data" within the computational environment.
Python, being one of the most ubiquitous programming languages, offers an array of pragmatic packages and libraries. These package resources, meticulously designed and curated, not only expedite the execution of data analytics but also furnish an assortment of sophisticated visualization tools capable of captivating the attention of stakeholders and researchers alike.

Course Intro.

01 :: Course Introduction
Contents: (1) Course intro. (2) Grading policy (3) What is the probabilities (4) What is the statistics (5) Why you need to take this course? (6) What you will learn from this course?

Environ Settings

02 :: Environ Settings
Contents: (1) Anaconda Install (2) Hello World (3) Terminal/ Windows Powershell (4) Git

Variables & Operations

03 :: Variables & Operations
Content: (1) Variables (2) Data Types (3) Strings (4) Booleans (5) Operators (6) Assignments

Comments & Markdown

04 :: Comments & Markdown
Content: (1) Comments (2) Markdown (2-1) Web Mode (2-2) LaTeX

Collections

Content: (1) List (2) Tuple (3) Set (4) Dictionary (5) Assignments

Flow Control

06 :: Flow Control
Content: (1) Conditions (2) If… Else… (3) For Loop (4) While Loop (5) Pass, Continue, Break (6) Try… Except…

Function

07 :: Function
Content: (1) Functions (2) Recursive Functions

Numpy

08 :: Numpy
Content: (1) Indexing (2) Dtype (3) Dimension (4) Shape (5) Reshape (6) Concatenation (7) Split (8) Sort (9) Random (10) Statistics (11) Normal Distribution (12) Central Limit Theory

Pandas

09 :: Pandas
Content: (1) Make a DataFrame (2) Indexing (3) Merge & Concatenation (4) Groupby & Drop Duplicated (5) Data I/O (6) IsNA, Fillna & Dropna (7) Pandas.Series.str (8) Datetime Formation (9) Datetime Analysis

Visualization

10 :: Visualization
Content: (1) Visualization Methods (2) Gallery (3) Matplotlib (4) Colormap (5) Line Plot (6) Export Figure (7) Subplot & Style Adjustment (8) Scatter & Bar Chart (9) Fill Between & Stack Plot (10) Histogram & Accumulated Histogram (11) Hexbin & Hist2D (12) Box & Violin Plot (13) Quiver (14) Contour & Contourf (15) Surface & Trisurf (16) Interpolaton for imshow (17) Seaborn (18) Pairplot (19) Plotly (20) Sankey Diagram

Statistics

11 :: Statistics
Content: (1) Statistical Analysis Road Map (2) Normality Test (3) F Test (4) Levene's Test (5) T Test (6) Correlation Analysis (7) Assignment

Regression Analysis

12 :: Regression Analysis
Content: (1) Scaling Problems (2) Ordinary Least Squares (3) Lasso Regression (4) Ridge Regression (5) Generalized Linear Model (6) Evaluation Metrics (7) Assignments

Eigen & Singular Value Decomposition

13 :: Eigen & Singular Value Decomposition
Content: (1) Eigen Decomposition (2) Singular Value Decomposition

Principal Component Analysis

14 :: Principal Component Analysis
Content: (1) Review (2) Why Do We Need Dimension Reduction? (3) Geometry (4) Linear Algebra (5) Characterisitcs (6) Principal Components (7) Variable Loading (8) Steps of PCA (9) sklearn.decomposition.pca (10) SVD (11) Eigen Decomposition (12) [CODE] Variable Loading

GeoPandas

15 :: GeoPandas
Content: (1) Intro. to GeoPandas (2) File I/O (3) Coordinate Reference System (4) Make a GeoDataFrame for Point\Polyline (5) Basic Preprocessing in GeoPandas (6) Map Visualization (7) GeoProcessing :: Fundamentals

GeoVisualization

16 :: GeoVisualization
Content: (1) Interactive Maps (2) Folium Fundamentals (3) Folium Advance