MET AD 599 A1:
Introduction to Python and SQL for Business Analytics
Description
Course Developers
Prerequisites
Student Competencies
Text and Materials
Required Textbooks:
Optional Textbooks:
Blackboard
Course Overview and Structure
Modules and Lectures
Lecture 1: Introduction to the Python language, installation, first programs, workspace options, current applications.Lecture 2: Script programming, data types, variables, mathematics, list operations, data structures (stack, queue, linked list, hash table, tree).
Lecture 3: Modules, flow control, conditional logic, text and strings, formatting and printing, loopsLecture 4: Functions, tuples, lists, and dictionaries
Lecture 5: Advanced topics for functions, Introduction to Algorithms, Common Algorithms, Realization of Data Structures
Lecture 6: Numpy/Scipy (functions and capabilities), Pandas.
Lecture 7: Statsmodel and SklearnLecture 8: Regressions, Cross-Validation, and Model Selection
Lecture 9: Database and SQL Introduction, basic syntax and environment, Creating and Populating Databases, basic queries and filtering
Lecture 10: Intermediate queries and subqueries, sets and joins, Grouping and Aggregation, Views
Lecture 11: CTE and Window functionsLecture 12: Integration of Python and SQL
Learning Goals
Grading Structure
|
Discussions in class and in the Blackboard
(i) Five biweekly Bb-based Discussion Forums (max. 4 pts/week)
(ii) In class discussions (max. 5 pts) |
20% |
|
Quizzes: 4 quizzes @ max. 5 pts/quiz |
|
|
Assignments: |
|
|
Four Individual Assignments (Due W4, W6, W8, W10)
Max. 7 pts each
|
28% |
|
Team Term Project, Phase 1 & Phase 2, Max 16 pts |
16% |
|
Final Report & Final Presentation, Max 10 pts |
10% |
| Class Participation | 6% |
|
TOTAL:
|
100% |
| Grade Converter Table | ||
|
% |
Points |
Grade |
|
96-100 |
4.00 |
A |
|
91-95.99 |
3.67 |
A- |
|
86-90.99 |
3.33 |
B+ |
|
81-85.99 |
3.00 |
B |
|
76-80.99 |
2.67 |
B- |
|
71-75.99 |
2.33 |
C+ |
|
66-70.99 |
2.00 |
C |
|
61-65.99 |
1.67 |
C- |
|
56-60.99 |
1.33 |
D+ |
|
51-55.99 |
1.0 |
D |
|
Under 50.99 |
0 |
F |
In-Class Discussions and Contribution to the Blackboard Biweekly Discussion Forums
Individual Assignments
Team Term Project explained
Requirements, Policies, and Standards
Grading Policy
- A, A-20% of the class
- B+, B, B- 80% of the class
- Other as merited
Policies on Late Assignments
Requests for Extensions
Academic Integrity and Honesty
|
# |
Goals |
Category |
Compliance |
|
1 |
Critical and
Innovative
Thinking
|
Substantial |
This course involves the utilization of methodologies from 2 different programming to solve problems that are complex enough to require programming. Consequently, critical and innovative thinking are necessary to be successful. There islikely more than one solution to every problem, and discernment will be learned by critical thinking students. |
|
2 |
International
Perspective
|
Substantial |
International enterprises use the skills introduced and developed in this course, and the thinking skills will translate well as students are required to contextualize their problem solving abilities. |
|
3 |
Communication
Skills
|
Substantial |
Students will be required to present their findings in an organized and comprehensible way, which will require additional communication skills beyond the technical toolset introduced. |
|
4 |
Decision-making |
Substantial |
Approaching problems in this course will require strong decision-making skills for the students to complete the assignments. Methods and tools will be presented, but the student must identify how and why to apply them. |
|
5 |
Technical Tools and Techniques |
Substantial |
This course presents tools and techniques laid out in the module summary. These tools include procedural programming and interfacing with structured data via SQL. |
|
6 |
Research Skills and Scholarship |
Substantial |
A helpful skill for any programmer is the ability to troubleshoot and diagnose a problem in their program. The instructor will guide what a problem might be, but will also instruct the student as to available resources for debugging. |
|
7 |
Professional Ethics and Standards |
Substantial |
The importance of professional ethics and standards will be emphasized through the submission of individual assignments, with special emphasis on individual student contributions to programming projects. |
|
8 |
Creative and Effective Leaders |
Substantial |
Facing an unknown problem with a set of programming skills and critical thinking abilities will prepare students to lead in a modern analytics environment. |
Course Outline and Course Calendar
|
Week Date |
Modules & Topics |
Readings |
Discussion Board |
To Do: In-Class and Between Classes Exercises & Assignments & Quizzes & Consultations |
|
W1
01/24 – 01/30
Class 1 on 1/24
|
MODULE 1
Lecture 1: Introduction to the Python language, installation, first programs, workspace options, current applications |
Module 1 Lecture Notes; Lubanovic, Ch:1-3 Thomas H, Ch: 10,11 |
Bb Discussion Forum W#0: Introduce Yourself Discussion Board W1 & W2 |
Discussion Board W1 & W2: Please provide a 150-200 word answer to the following question, along with any references. Also, please post a response to at least two (2) of your classmates: Pick a type of data structure that we introduced in the class (e.g., stack, queue, linked list, hash table, tree, etc.) and discuss its practical use case and the problems it can solve. |
|
W2
01/31 – 02/6
Class 2 on 01/31
|
MODULE 1
Lecture 2: Script programming, data types, variables, mathematics, list operations, data structures (stack, queue, linked list, hash table, tree)
|
Module 1
Lecture Notes; Lubanovic, Ch:1-3 Thomas H, Ch: 10,11
|
Discussion Board W1 & W2, Continued |
Quiz 1: available between Feb-05 at 9 am ET and Feb-06 at 11:59 pm ET |
|
W3
02/7 –02/13
Class 3 on 02/7
|
MODULE 2
Lecture 3: Modules, flow control, conditional logic, text and strings, formatting and printing, loops
|
Module 2
Lecture Notes; Lubanovic, Ch: 4-5
|
Discussion Board W3 & W4 |
Discussion Boad W3 & W4: Please provide a 150-200 word answer to the following question, along with any references. Also, please post a response to at least two (2) of your classmates: I assume you have already been able to generate errors in your code as you're working to develop programs. For 1 of the errors you've encountered so far, search stackoverflow.com for a possible solution, and report on what you find. Be sure to highlight any extraneous information you encountered, that is, how did you discern what was the correct answer for your problem? In-Class Discussion: Preparation for Individual Assignment 1 (due W4/D7) |
|
W4
02/14 – 02/21
Class 4 on 02/14
|
MODULE 2
Lecture 4: Functions, tuples, lists, and dictionaries
|
Module 2
Lecture Notes; Lubanovic, Ch: 4-5
|
Discussion Board W3 & W4, Continued |
Quiz 2: available between Feb-20 at 9 am ET and Feb-21 at 11:59 pm ET
Individual Assignment 1, due on Feb-21 at 11:59 pm ET
|
|
W5
2/22 – 2/27
Class on 2/22 Tue
|
MODULE 3
Lecture 5: Advanced topics for functions, Introduction to Algorithms, Common Algorithms, Realization of Data Structures
|
Module 3
Lecture Notes; Lubanovic, Ch:6-7 Thomas H, Ch: 1, 3, 6, 10, 11
|
Discussion Board W5 & W6 |
Discussion Board W5 &W6: Please provide a 150-200 word answer to the following question, along with any references. Also, please post a response to at least two (2) of your classmates: Algorithms can be very interesting. Please pick an algorithm that you find interesting and discuss how it works and the problems it can solve.
In-Class Discussion: Preparation for Individual Assignment 2 (due W6/D7)
|
|
W6
02/28 – 03/4
Class on 02/28
SPRING RECESS 03/5 – 03/13
|
MODULE 3
Lecture 6: Numpy/Scipy (functions and capabilities), Pandas.
|
Module 3
Lecture Notes; Lubanovic, Ch:6-7 Thomas H, Ch: 1, 3, 6, 10, 11
|
Discussion Board W5 & W6, Continued |
Quiz 3: available between March-3 at 9 am ET and March-4 at 11:59 pm ET Individual Assignment 2, due on March-4 at 11:59 pm ET |
|
W7
03/14–03/20
Class 7 on 3/14
|
MODULE 4
Lecture 7:Statsmodel and Sklearn
|
Module 4
Lecture Notes; Trevor Hastie, Ch: 3, 7, 15
|
Discussion Board W7 & W8 |
Discussion Board W7 & W8: Please provide a 150-200 word answer to the following question, along with any references. Also, please post a response to at least two (2) of your classmates: We have learned several regression models. Please pick one model and discuss its advantages and disadvantages over other models. |
|
W8
03/21 – 03/27
Class 8 on 03/21
|
MODULE 4
Lecture 8: Regressions, Cross-Validation, and Model Selection
|
Module 4
Lecture Notes; Trevor Hastie, Ch: 3, 7, 15
|
Discussion Board W7 & W8, Continued Preparation for Team Term Project: Team Building & Guidelines for the Preparation of Team Term Project Phase 1 & Phase 2 |
Quiz 4: available between March-26 at 9 am ET and March-27 at 11:59 pm ET Individual Assignment 3, due on March-27 at 11:59 pm ET |
|
W9
03/28 – 04/03
Class 9 on 03/28
|
MODULE 5
Lecture 9: Database and SQL Introduction, basic syntax and environment, Creating and Populating Databases, basic queries and filtering
|
Module 5
Lecture Notes; Alan Beaulieu, Ch: 1-11
|
Discussion Board W9 & W1 |
Discussion Board W9 & W10: Please provide a 150-200 word answer to the following question, along with any references. Also, please post a response to at least two (2) of your classmates: We have so many handy tools, such as Excel, Google sheets, etc., which are easy to use and do not require any coding/querying background knowledge. Please discuss the advantage (or disadvantages) of SQL to one of the tools. |
|
W10
04/04 – 04/10
Class 10 on 04/04
|
MODULE 5
Lecture 10: Intermediate queries and subqueries, sets and joins, Grouping and Aggregation, Views
|
Module 5
Lecture Notes; Alan Beaulieu, Ch: 1-11
|
Discussion Board W9 & W10, Continued |
Individual Assignment 4, due on Apr-10 at 11:59 pm ET |
|
W11
04/11 – 04/19
Class 11 on 04/11
|
MODULE 6
Lecture 11: CTE and Window functions
|
e-Reserve, Course Pack, L11 |
|
Team Assignment Project, Phase 1, due on Apr-19 at 11:59 pm ET |
|
W12
04/20 – 04/24
Class 12 on 04/20 Wed
|
MODULE 6
Lecture 12: Integration of Python and SQL
|
e-Reserve, Course Pack, L12 |
|
Team Assignment Project, Phase 2, due on Apr-24 at 11:59 pm ET |
|
W13
04/25 – 05/01
Class 13 on 04/25
|
Course Review and Preparation for the Submission of the Final Team Project |
Bb Discussion Forum
W#13 & W#14: AD899 - Takeaways & Lessons Learned
|
|
Final Team Project Report, due on May-01 at 11:59 pm ET |
|
W14
Class 14 on 05/02 -05/04
|
Preparation for the Final Presentations |
|
|
Final In-Class Team Presentations, Session 1 |
|
Final Exam 05/09 |
|
|
|
Final In-Class Team Presentations, Session 2 |