• Log In
  • Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Scripting for Data Science/Analytics

Department of Management Information Systems, Temple University

Scripting for Data Science/Analytics

MIS 3505.001 ■ Fall 2024 ■ Kanghyun (Simon) Cho
  • Home
  • Announcements
  • About
    • Course details
    • Course materials
    • Grading
    • Gradebook
    • Instructor
  • File Upload Area
  • Starter Files
  • Exam Info

Schedule

This schedule may be changed with prior notice based upon the pace and needs of the class and other unforeseen circumstances. Any change or other information about the class will be announced during the class or on the class site.  Failure to learn about changes due to absence from class or not checking the community site regularly does not constitute an acceptable excuse for being unaware of any change or required activity.

DATES TOPIC DUE
8/26, 8/28

Unit 1: Introduction to Computers and Programming

Learning Objective: Students will be able to install Python and interact with the Python interpreter and IDLE.

Topics Covered:
• Introduction
• Hardware and Software
• How Computers Store Data
• How a Program Works
• Using Python

Class Prep (for day 2): Gaddis, Chapter 1

In-Class Activities:
• Installing Python
• Creating your first program

Install Python from www.python.org/downloads before second day of class.
8/30, 9/4, 9/6

Unit 2: Input, Processing and Output

Learning Objective: Students will be able to create simple Python programs that prompt the user for input, perform some basic calculations and generate output.

Topic Covered:
• Designing a Program
• Input, Processing, and Output
• Displaying Output with print Function
• Comments
• Variables
• Reading Input from the Keyboard
• Performing Calculations
• Named Constants

Class Prep: Gaddis, Chapter 2

In-Class Activities:
• Personal Information
• Sales Prediction
• Land Calculation
• Total Purchase
• Distance Traveled
• Sales Tax
• Miles-per-Gallon
• Tip, Tax, and Total

Mastery Challenges:
• Celsius to Fahrenheit
• Ingredient Adjuster
• Male and Female Percentages
• Planting Grapevines
• Compound Interest

Chapter 2 Quiz – Due at start of class on 8/30
9/9, 9/11, 9/13

Unit 3: Decision Structures and Boolean Logic

Learning Objective:  Students will be able to design and create Python programs that implement business rules using conditional logic.

Topics Covered:

  • The if Statement
  • The if-else Statement
  • Comparing Strings
  • Nested Decision Structures and the if-elif-else Statement
  • Logical Operators
  • Boolean Variables

Class Prep: Gaddis, Chapter 3

In-Class Activities:

  • Areas of Rectangles
  • Mass and Weight
  • Magic Dates
  • Day of Week
  • Age Classifier
  • Roman Numerals
  • Color Mixer
  • Hot Dog Cookout Calculator

Mastery Challenges:
• Roulette Wheel Colors
• Money Counting Game
• Book Club Points
• Software Sales
• Shipping Charges
• Body Mass Index
• Time Calculator
• February Days

Chapter 3 Quiz – Due at start of class on 9/9
9/16, 9/18, 9/20

Unit 4: Functions

Learning Objective: Students will be able to design and create Python programs that utilize built-in and user defined functions so they can create applications that reuse code and are easier to create and maintain.

Topics Covered:
• Introduction to Functions
• Defining and Calling a Void Function
• Designing a Program to Use Functions
• Local Variables
• Passing Arguments to Functions
• Global Variables and Global Constants
• Introduction to Value-Returning Functions: Generating Random Numbers
• Writing Your Own Value-Returning Functions
• The math Module
• Storing Functions in Modules

Class Prep: Gaddis, Chapter 5

Required Viewing: Watch the IDLE debugger video found here:

In-Class Activities:
• Kilometer Converter
• Sales Tax Program Refactoring
• How Much Insurance?
• Automobile Costs
• Property Tax
• Calories from Fat and Carbohydrates
• Stadium Seating – Chapter 5 Assignment
• Paint Job Estimator

Mastery Challenges:
• Monthly Sales Tax
• Feet to Inches
• Math Quiz
• Maximum of Two Values
• Falling Distance
• Kinetic Energy
• Random Number Guessing Game
• Rock, Paper, Scissors Game

Python Program Testing Tool

Chapter 5 Quiz – Due at start of class on 9/16
9/23, 9/25, 9/27, 9/30

Unit 5: Repetition Structures

Learning Objective: Students will be able to design and create Python programs that utilize repetition structures to perform the same tasks on different data over and over.

Topics Covered:
• Introduction to Repetition Structures
• The while Loop: a Condition-Controlled Loop
• The for Loop: a Count-Controlled Loop
• Sentinels
• Input Validation Loops
• Nested Loops

Class Prep: Gaddis, Chapter 4

In-Class Activities:
• Bug Collector
• Calories Burned
• Budget Analysis
• Distance Traveled
• Celsius to Fahrenheit Table
• Pennies for Pay
• Sum of Numbers
• Average Rainfall
• Ocean Levels
• Tuition Increase
• Weight Loss – Chapter 4 Assignment

Mastery Challenges:
• Calculating the Factorial of a Number
• Population
• Drawing Pattern 1
• Drawing Pattern 2

Chapter 5 Assignment – Stadium Seating – Due at start of class on 9/23

Chapter 4 Quiz – Due at start of class on 9/23

10/2

Exam #1

Chapter 4 Assignment – Weight Loss – Due at start of class on 10/2
10/4, 10/7, 10/9, 10/14

Unit 6: Files and Exceptions

Learning Objective: Students will be able to design and create Python programs that read, process and write data using files.

Topics Covered:
• Introduction to File Input and Output
• Using Loops to Process Files
• Processing Records

Class Prep: Gaddis, Chapter 6

In this unit on working with files, it is important that you understand where you have stored your files and the path to your files. You will use the path to your files when reading or writing files in Python and when accessing datasets in the Pandas section of the course. Please watch the corresponding video below (one video for Windows users and one for Mac users). Be 100% sure that you understand how to reference any input or output file using its full path.

How to get the complete path to a file or folder on Windows 10 – YouTube

How To Find And Copy The File Path In MacOS | A Quick & Easy Mac Guide – YouTube

In-Class Activities:
• File Display
• File Head Display
• Line Number
• Item Counter
• Sum of Numbers
• Average of Numbers – Chapter 6 Assignment
• Random Number File Writer
• Random Number File Reader

Mastery Challenges:
• Golf Scores
• Personal Web Page Generator
• Average Steps Taken

Chapter 6 Quiz – Due at start of class on 10/4
10/16, 10/18, 10/23

Unit 7: Lists and Tuples

Learning Objective: Students will be able to design and create Python programs that work with data in a variety or data structures which provide a foundation for data analysis in Python.

Topics Covered:
• Sequences
• Introduction to Lists
• List Slicing
• Finding Items in Lists with the in Operator
• List Methods and Useful Built-in Functions
• Copying Lists
• Processing Lists
• Two-Dimensional Lists
• Tuples
• Plotting List Data with the matplotlib Package

Class Prep: Gaddis, Chapter 7

In-Class Activities:
• Total Sales
• Lottery Number Generator
• Rainfall Statistics
• Number Analysis Program
• Charge Account Validation
• Larger than n
• Driver’s License Exam – Chapter 7 Assignment
• Name Search

Mastery Challenges:
• Population Data
• World Series Champions
• Prime Number Generation
• Magic 8 Ball

Chapter 6 Assignment – Average of Numbers – Due at start of class on 10/16

Chapter 7 Quiz
– Due at start of class on 10/16
10/25, 10/28, 10/30, 11/1

Unit 8: Strings

Learning Objective: Students will be able to design and create Python programs that create or find and manipulate text in data.

Topics Covered:
• Basic String Operations
• String Slicing
• Testing, Searching, and Manipulating Strings

Class Prep: Gaddis, Chapter 8

In-Class Activities:
• Sum of Digits in a String
• Morse Code Converter
• Alphabetic Telephone Number Translator
• Initials
• Date Printer
• Average Number of Words
• Character Analysis
• Vowels and Consonants 

Mastery Challenges:
• Pig Latin
• Word Separator
• Sentence Capitalizer

Chapter 7 Assignment – Driver’s License Exam – Due at start of class on 10/25

11/4 Exam #2  

11/6, 11/8

Unit 9.1: What are Python Libraries?

Learning Objective: Students will be able to explain what Python libraries, Anaconda and Jupyter are and list and explain the use of a number of the most popular Python libraries.

Topics Covered:
• Python Libraries
• Anaconda
• Jupyter

Class Prep: Install Anaconda Python 3.8

In-Class Activities:
• Verify Anaconda is installed
• Verify Jupyter is installed

If you want to keep using visual studio…

If you want to use Google Colab

Unit 9.2: Pandas DataFrame Basics

Learning Objective: Students will be able to apply a basic understanding of DataFrames, the core data structure used by Pandas for the manipulation and analysis of data.

Topics Covered:
• Series
• DataFrames

Class Prep: Chen, Chapter 1

In-Class Activities:
• Exploring ICANetflix_Originals.csv – Part 1

 
11/11, 11/13, 11/15

Unit 10: Pandas Data Structures

Learning Objective: Students will be able to utilize an array of methods to work with Series and DataFrames. Students will also be able to import data from various sources into DataFrames and to export data from DataFrames to various formats.

Topics Covered:
• Series Methods
• DataFrame Methods
• Importing and Exporting Data

Class Prep: Chen, Chapter 2

In-Class Activities:
• Exploring ICANetflix_Originals.csv – Part 2
• Exploring ICAtitanic.csv
• Exploring read_csv() & read_clipboard()

 
11/18, 11/20, 11/22

Unit 11: Introduction to Plotting

Learning Objective: Students will be able to design and create Python programs that utilize matplotlib, seaborn and pandas to visualize (or plot) data.

Topics Covered:
• Matplotlib
• Seaborn
• Plotting with Pandas

Class Prep: Chen, Chapter 3

In-Class Activities:
• Histograms
• Titanic Survivors and Deaths by Class
• Scatterplots – Height vs. Weight by Gender
• Violinplot – What More Can We See?

 
12/2, 12/4, 12/6

Unit 12: Data Assembly

Learning Objective:
• Students will be able to design and create Python programs that combine and utilize multiple data sets.

Topics Covered:
• Data Assembly

Class Prep: Chen, Chapter 4 (pages 93-104 only)

In-Class Activities:
• Bitcoin Price over Time – Concatenating time series data
• Concrete Company – Merging data sets

 

Unit 13: Missing Data

Learning Objective:
• Students will be able to identify missing data, identify the sources of missing data and utilize different techniques for dealing with missing data in Pandas.

Topics Covered:
• Missing Data

Class Prep: Chen, Chapter 5 (pages 110-120 only)

 

In-Class Activities:
• Missing Data – Exploring and dealing with Missing Data

Unit 14: Simple Linear Regression

Learning Objective: Students will be able to perform simple linear regression.

Topics Covered:
• Simple linear regression

Class Prep: Chen, Chapter 12 (pages 243-246)

In-Class Activities:
• What is “Linear Regression”
• Predicting the price of Bitcoin using linear regression

Special Section: Beyond Class and Next Steps

Exam Review Session

 
12/9

Exam #3

 

 

Primary Sidebar

RECENT ANNOUNCEMENTS

Welcome to MIS 3505 – Scripting for Data Science/Analytics

Hello and welcome to MIS 3505 - Scripting for Data Science/Analytics.  We … [More...] about Welcome to MIS 3505 – Scripting for Data Science/Analytics

[More Announcements...]

Copyright © 2025 · Department of Management Information Systems · Fox School of Business · Temple University