0% found this document useful (0 votes)
5 views

Python and Data Analysis

The document outlines a comprehensive 15-week Python Data Science curriculum designed to teach students from basic programming to advanced data science applications. It includes hands-on assignments, practical labs, and covers essential topics such as data structures, object-oriented programming, data analysis, and visualization using popular libraries. The course culminates in a capstone project where students apply their skills to real-world problems.

Uploaded by

shiphatun noor
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Python and Data Analysis

The document outlines a comprehensive 15-week Python Data Science curriculum designed to teach students from basic programming to advanced data science applications. It includes hands-on assignments, practical labs, and covers essential topics such as data structures, object-oriented programming, data analysis, and visualization using popular libraries. The course culminates in a capstone project where students apply their skills to real-world problems.

Uploaded by

shiphatun noor
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Python- Data Science Study Plan

A 15-Week Curriculum for Academic Affiliations


Course Overview

This course is designed to take students from Python basics through to advanced data science
applications. The curriculum combines theoretical knowledge with practical hands-on
assignments and projects to ensure students gain applicable skills for real-world scenarios.

Learning Objectives

By the end of this course, students will be able to:

●​ Write and debug Python programs using proper syntax and programming practices
●​ Manipulate various data structures and implement control flow in Python
●​ Implement object-oriented programming concepts
●​ Perform data analysis, statistical measurements, and data visualization
●​ Work with popular data science libraries (NumPy, Pandas, Matplotlib)
●​ Extract insights from real-world datasets
●​ Automate tasks using Python
●​ Implement data scraping techniques
●​ Apply Python skills to business and research scenarios

Required Tools and Resources

●​ Python 3.x
●​ Jupyter Notebook/Lab
●​ Integrated Development Environment (PyCharm, VS Code, etc.)
●​ Libraries: NumPy, Pandas, Matplotlib, Seaborn, SciPy
●​ Access to datasets for practice

Detailed Course Structure


Week 1: Introduction to Python and Programming Fundamentals
Session 1: Python Basics(1.5 hours)
●​ Introduction to the Python programming language
●​ History and advantages of Python for data science
●​ Setting up the development environment
●​ Installation and configuration (Python, pip, virtual environments)
●​ Running Python code (scripts vs interactive mode)
●​ Basic console commands and file operations
●​ Introduction to how computers work (binary, memory, processing)
●​ Libraries, packages, and module system
●​ Github basics

Session 2: Python Syntax and Fundamentals(1 hour)

●​ Python syntax rules


●​ Comments and documentation
●​ Variables and assignment
●​ Data types overview (int, float, string, boolean)
●​ Type casting and conversion
●​ String operations and formatting
●​ Boolean logic and operations
●​ Arithmetic, comparison, and logical operators
●​ Basic input/output operations

Practical Lab

●​ Working with Python interpreter


●​ Writing and running simple Python scripts
●​ Experimenting with data types and operations

Assignment 1

1.​ Number Manipulator: Write a program that takes a number as input, performs various
operations (multiply by 3, add 8, divide by 2, subtract 4), and outputs the result.
2.​ Temperature Converter: Create a program that converts temperatures between Celsius
and Fahrenheit based on user input.
3.​ Simple Calculator: Build a basic calculator that can perform addition, subtraction,
multiplication, and division operations based on user inputs.
4.​ String Analyzer: Create a program that takes a string input and outputs the number of
characters, words, and whether it's a palindrome.
5.​ Budget Calculator: Write a program that accepts income and multiple expense inputs,
then calculates remaining budget and percentage of income spent.
Week 2: Data Structures and Control Flow (1.5 hour)

Session: Data Structures

●​ Lists: creation, indexing, slicing, methods


●​ Tuples: immutability, use cases
●​ Sets: unique elements, set operations
●​ Dictionaries: key-value pairs, methods
●​ Choosing the right data structure
●​ Conditional statements (if-elif-else)
●​ Logical operators in conditions
●​ Nested conditional statements
●​ Conditional expressions (ternary operator)

Practical Lab

●​ Working with various data structures


●​ Implementing conditional logic
●​ Solving problems using appropriate data structures

Assignment 2

1.​ List Manipulator: Create a program that performs various operations on a list (sorting,
counting elements, finding max/min, removing duplicates).
2.​ Dictionary Manager: Build a contact management system using dictionaries to store
names, phone numbers, and emails with add, delete, and search functionality.
3.​ Shopping Cart: Implement a shopping cart program using appropriate data structures
that allows adding items, removing items, and calculating the total price.
4.​ Grade Categorizer: Write a program that takes student scores as input and categorizes
them into grades (A, B, C, D, F) using conditional statements.
5.​ Data Structure Converter: Create a program that can convert between different data
structures (list to set, tuple to list, dictionary to list of tuples, etc.).

Week 3: Control Flow - Loops and Arrays (1.5 hour)

Session: Loops and Arrays

●​ For loops and iteration


●​ While loops
●​ Loop control statements (break, continue)
●​ Nested loops
●​ Comprehensions (list, dictionary, set)
●​ Introduction to arrays
●​ NumPy arrays vs Python lists
●​ Array operations and manipulations
●​ Multidimensional arrays

Practical Lab

●​ Implementing various loop structures


●​ Working with arrays
●​ Solving iteration problems

Assignment 3

1.​ Pattern Printer: Create a program that prints various patterns (pyramid, diamond, etc.)
using nested loops.
2.​ Number Analyzer: Write a program that analyzes a list of numbers to find prime
numbers, factorial calculations, and Fibonacci sequence positions.
3.​ Matrix Operations: Implement basic matrix operations (addition, subtraction, transpose)
using nested lists or NumPy arrays.
4.​ Data Filter: Create a program that filters data from a list based on multiple criteria using
loops and conditional statements.
5.​ Text Analyzer: Build a program that analyzes text to count word frequency, sentence
length, and character distribution using appropriate loops and data structures.

Week 4: Object-Oriented Programming (1.5 hour)

Session: Object-Oriented Concepts

●​ Classes and objects


●​ Attributes and methods
●​ Constructors and initialization
●​ Encapsulation
●​ Inheritance and class hierarchies
●​ Method overriding
●​ Polymorphism
●​ Iterators and generators
●​ Advanced OOP concepts and best practices

Practical Lab

●​ Designing and implementing classes


●​ Working with inheritance
●​ Creating iterators

Assignment 4
1.​ Bank Account System: Create a class hierarchy for different types of bank accounts
(savings, checking) with methods for deposit, withdrawal, and interest calculation.
2.​ Library Management: Implement a simple library system with classes for books,
members, and the library itself, demonstrating inheritance and polymorphism.
3.​ Shape Calculator: Design a class hierarchy for different shapes (circle, rectangle,
triangle) with methods to calculate area and perimeter, showcasing polymorphism.
4.​ Custom Iterator: Create a custom iterator class that iterates through a sequence in a
specific pattern (e.g., only even positions, in reverse, or with a step value).
5.​ E-commerce System: Build a simple e-commerce system with classes for products,
cart, and users, demonstrating how objects interact within a system.

Week 5: File Handling (1.5 hour)

Session: File Operations

●​ File handling concepts


●​ Opening and closing files
●​ Reading from files (read, readline, readlines)
●​ Writing to files
●​ Appending to files
●​ File manipulation techniques
●​ Error handling with files
●​ Working with different file formats (txt, csv, json)
●​ File deletion and management

Practical Lab

●​ Working with various file operations


●​ Implementing error handling
●​ Processing different file formats

Assignment 5

1.​ Log Analyzer: Create a program that reads a log file, parses its content, and provides
statistics about errors, warnings, and other patterns.
2.​ CSV Data Processor: Write a program that reads a CSV file, performs calculations on
the data, and writes the results to a new CSV file.
3.​ JSON Configuration Manager: Implement a program that reads, updates, and writes to
a JSON configuration file, allowing users to modify settings.
4.​ File Backup System: Create a program that backs up specified files to a designated
directory, including timestamp information.
5.​ Text File Merger: Build a utility that combines multiple text files into a single file with
options for ordering and formatting the content.
Week 6: Project Development (1.5 hour)

Session: Project Planning and Development

●​ Software development lifecycle


●​ Project planning and requirements gathering
●​ Design principles
●​ Implementation strategies
●​ Testing and debugging
●​ Documentation practices
●​ Version control basics (Git)
●​ Project presentation techniques

Practical Lab

●​ Project planning and initialization


●​ Implementation of core features
●​ Testing and refining

Project Guidelines

●​ Choose a problem domain that interests you


●​ Define clear objectives and requirements
●​ Apply concepts learned in previous weeks
●​ Implement proper documentation
●​ Test thoroughly
●​ Prepare a presentation demonstrating functionality

Home Project Options

1.​ Personal Finance Manager: Create an application that tracks income, expenses, and
savings with visualization of spending patterns.
2.​ Weather Data Analyzer: Build a system that fetches weather data, analyzes trends, and
provides insights with visualizations.
3.​ Task Management System: Develop a program for managing tasks, deadlines, and
priorities with persistent storage.
4.​ Text-based Game: Create an interactive adventure game demonstrating object-oriented
design and file handling.
5.​ Data Analysis Dashboard: Build a system that analyzes a dataset of your choice and
presents findings through an interactive interface.
Week 7: Introduction to Data Analysis (1.5 hour)

Session: Data Analysis Fundamentals

●​ Introduction to data analysis


●​ Types of data (structured, unstructured)
●​ Data sources and formats
●​ Data analysis process
●​ Descriptive vs. inferential analysis
●​ Exploratory data analysis (EDA)
●​ Data interpretation techniques
●​ Introduction to data analysis libraries
●​ Extracting insights from data

Practical Lab

●​ Exploring sample datasets


●​ Basic data analysis techniques
●​ Insight extraction exercises

Week 8: Statistical Measurements I (1.5 hour)

Session: Basic Statistics for Data Analysis

●​ Measures of central tendency (mean, median, mode)


●​ Measures of dispersion (range, variance, standard deviation)
●​ Data distribution concepts
●​ Percentiles and quartiles
●​ Correlation analysis
●​ Covariance
●​ Basic probability concepts
●​ Statistical significance
●​ Hypothesis testing introduction

Practical Lab

●​ Calculating statistical measures


●​ Interpreting statistical results
●​ Applying statistics to real data

Week 9: Statistical Measurements II and Data Preprocessing(1.5 hour)


Session: Advanced Statistics and Data Preparation

●​ Regression analysis
●​ Time series analysis basics
●​ Statistical tests (t-test, chi-square, ANOVA)
●​ Data cleaning techniques
●​ Handling missing values
●​ Outlier detection and treatment
●​ Data normalization methods
●​ Feature scaling techniques
●​ Dimensionality reduction
●​ Principal Component Analysis (PCA)

Practical Lab

●​ Data cleaning exercises


●​ Implementing normalization
●​ PCA implementation and interpretation

Week 10: Data Visualization (1.5 hours)

Session: Visualization Techniques

●​ Principles of data visualization


●​ Types of charts and their uses:
○​ Bar charts and histograms
○​ Line charts and time series
○​ Scatter plots
○​ Pie and donut charts
○​ Box plots and violin plots
○​ Heatmaps
○​ Geographic visualizations
●​ Interactive visualization concepts
●​ Choosing the right visualization
●​ Visual storytelling with data

Practical Lab

●​ Creating various types of visualizations


●​ Building effective dashboards
●​ Interpreting visual insights
Week 11: Data Science Libraries (1.5 hours)

Session: Python Data Science Ecosystem

●​ NumPy: array operations, mathematical functions


●​ Pandas: DataFrames, Series, data manipulation
●​ Matplotlib: customizing plots, subplots, saving figures
●​ Seaborn: statistical visualization, themes
●​ SciPy: scientific computing, statistics
●​ Integration between libraries
●​ Best practices for data science workflows
●​ Performance considerations

Practical Lab

●​ Solving problems using multiple libraries


●​ Data manipulation with Pandas
●​ Creating publication-quality visualizations

Week 12: Business and Research Analysis (1.5 hours)

Session: Applied Data Analysis

●​ Business intelligence concepts


●​ Key performance indicators (KPIs)
●​ Business metrics and analysis
●​ Research methodology
●​ Hypothesis formulation and testing
●​ Case Study 1: Business Analysis
○​ Revenue optimization
○​ Customer segmentation
○​ Market trend analysis
●​ Case Study 2: Research Analysis
○​ Experimental design
○​ Statistical analysis
○​ Research finding interpretation

Practical Lab

●​ Working through business and research case studies


●​ Applying appropriate analysis techniques
●​ Presenting findings professionally
Week 13: SQL and Excel Automation (1.5 hours)

Session: Database Interaction and Spreadsheet Automation

●​ Introduction to SQL
●​ Database connections in Python
●​ Basic SQL queries (SELECT, INSERT, UPDATE, DELETE)
●​ Pandas and SQL integration
●​ Excel automation with Python
●​ Reading and writing Excel files
●​ Excel data manipulation
●​ Excel report generation
●​ Automated data processing workflows

Practical Lab

●​ Writing SQL queries in Python


●​ Automating Excel tasks
●​ Building integrated data workflows

Week 14: Web Scraping and Automation (1.5 hours)

Session: Data Collection and Process Automation

●​ Web scraping ethics and legality


●​ HTML basics for scraping
●​ Web scraping techniques
●​ Libraries: BeautifulSoup, Scrapy, Requests
●​ Handling dynamic content
●​ Data extraction and storage
●​ General automation concepts
●​ Task scheduling and triggers
●​ Email automation
●​ Report generation automation
●​ API interactions

Practical Lab

●​ Web scraping implementation


●​ Building automation scripts
●​ Creating integrated automation workflows
Week 15: Capstone Projects (1.5 hours)

Session: Applied Python Data Science Projects

●​ Real-world problem solving


●​ Project management for data science
●​ Data collection strategies
●​ End-to-end implementation
●​ Results communication
●​ Project presentation techniques

Final Project Guidelines

●​ Select a real-world problem requiring data analysis


●​ Collect and prepare relevant data
●​ Apply appropriate analysis techniques
●​ Create meaningful visualizations
●​ Extract actionable insights
●​ Present findings professionally

Sample Project Ideas

1.​ Market Analysis: Analyze market trends and consumer behavior for a specific industry.
2.​ Health Data Analysis: Explore health metrics and identify patterns or risk factors.
3.​ Financial Portfolio Optimization: Analyze financial data to optimize investment
strategies.
4.​ Social Media Sentiment Analysis: Analyze sentiment patterns across social platforms.
5.​ Environmental Data Monitoring: Analyze environmental data to identify patterns and
concerns.

Assessment Structure
●​ Assignments (40%): Weekly programming assignments
●​ Mid-term Project (20%): Week 6 project
●​ Participation and Labs (10%): In-class engagement and lab work
●​ Final Project (30%): Week 15 capstone project

Resources and References


Textbooks
https://docs.python.org/3/
https://stackoverflow.com/questions

●​ "Python for Data Analysis" by Wes McKinney


●​ "Python Crash Course" by Eric Matthes

Online Resources

●​ https://www.w3schools.com/python/
●​ https://www.tutorialspoint.com/python/index.htm
●​ https://youtu.be/Ri1Lgdew8Ds?si=hrbo4VHFT_s_fKpt
●​ https://youtu.be/7wnove7K-ZQ?si=i3Uiq9Ba_2JsiXus
●​ https://youtu.be/OdtVdjtONb4?si=Csfi9Xgy-rD1c-bI

Additional Tools

●​ GitHub Classroom for assignment submissions


●​ Jupyter Notebook for interactive coding
●​ Google Colab for cloud-based Python environment
●​ Slack/Discord for class communication and support

You might also like