UGA Bulletin Logo

Introduction to Python and Data Science

Analytical Thinking

Course Description

Introduces Python programming and data science, focusing on key libraries such as Pandas, Matplotlib and Scikit-learn. Students will use Jupyter notebooks for interactive coding, exploring topics such as data analysis, regression, clustering, decision trees, and web scraping. Hands-on projects develop skills in Python programing, data interpretation, decision-making, and effective communication.


Athena Title

Intro to Python and Data Sci


Non-Traditional Format

This course will be taught 95% or more online.


Semester Course Offered

Offered fall


Grading System

A - F (Traditional)


Student learning Outcomes

  • Students will master fundamental Python programming techniques and tools for data science applications.
  • Students will utilize Python data structures (e.g., lists, dictionaries, and tuples) to organize and manipulate data effectively.
  • Students will import, clean, and preprocess complex datasets for analysis and visualization.
  • Students will design and generate data visualizations to present insights clearly and effectively.
  • Students will identify trends, relationships, and anomalies in datasets by conducting exploratory data analysis (EDA).
  • Students will construct machine learning models, including regression, decision trees, and clustering, to represent and predict data behaviors.
  • Students will develop web scraping pipelines to extract, structure, and process online data sources.
  • Students will assess ethical, legal, and privacy considerations in data science applications and decision-making.

Topical Outline

  • Python Programming Basics & Markdown • Introduction to Python syntax, control structures, and functions. • Using Jupyter notebooks and Markdown for documentation and reporting.
  • Introduction to Data Structures • Overview of Python data structures, e.g., lists, dictionaries, tuples, and sets. • Working with pandas DataFrames and NumPy arrays.
  • Importing Data & Data Visualization • Importing datasets from various file formats (e.g.: CSV, JSON). • Creating advanced visualizations using Seaborn and Matplotlib.
  • Exploratory Data Analysis (EDA) • Techniques for data cleaning and handling missing values. • Statistical summaries and visualization techniques for understanding data.
  • Introduction to Machine Learning • Overview of supervised and unsupervised learning methods. • Understanding train-test split and evaluation metrics.
  • Regression Analysis • Linear regression and regularization techniques. • Model evaluation and interpretation.
  • Decision Trees and Random Forests • Building decision trees for classification and regression. • Introduction to ensemble methods and random forests. • Interpretability versus accuracy in decision trees and ensembles. • Handling imbalanced datasets in classification tasks. • Ethical considerations when using decision trees in high-stakes applications.
  • Clustering Techniques • K-means clustering and hierarchical clustering. • Evaluating cluster quality. • Challenges of determining the optimal number of clusters. • Ethical concerns in segmentation and profiling. • Risks of overgeneralization in unsupervised learning applications.
  • Dimensionality Reduction • Principal Component Analysis (PCA). • Applications of dimensionality reduction for visualization and preprocessing.
  • Introduction to Web Scraping • Basics of web scraping. • Ethical considerations and best practices for web scraping.

Institutional Competencies Learning Outcomes

Analytical Thinking

The ability to reason, interpret, analyze, and solve problems from a wide array of authentic contexts.



Syllabus


Public CV