週次 |
授課內容 |
學生指定閱讀資料 |
授課方式 |
1 |
Course overview
Learning objectives: Introduce students to the interactive JupyterLab environment. Overview of Python applications in business analytics. Installation of the Anaconda distribution.
Course design: Presentation slides, news articles, and computer demonstrations. |
Classroom session to introduce the topics, assessments, and class delivery options.
|
▓面授 □遠距 |
2 |
Basic data types
Learning objectives: Introduce built-in data types including str, int, float, bool, NoneType and etc. Illustrate basic math operations and text manipulations.
Course design: Computer demonstrations.
Assessment: Homework 1 |
ABSP Ch1, JupyterLab
|
□面授 ▓遠距 |
3 |
Flow control I
Learning objectives: Explain the concepts of comparison operators and True-False tables.
Course design: Flow charts and computer demonstrations.
Assessment: Homework 2 |
ABSP Ch2, JupyterLab
|
□面授 ▓遠距 |
4 |
Flow control II
Learning objectives: Automate processes with while- and for-loop.
Course design: Flow charts and computer demonstrations. |
ABSP Ch2, JupyterLab
|
□面授 ▓遠距 |
5 |
Functions and methods
Learning objectives: Write functions to reuse code. Discuss concepts in recursive functions.
Course design: Computer demonstrations and applications of recursion.
Assessment: Homework 3 |
ABSP Ch3, JupyterLab
|
□面授 ▓遠距 |
6 |
Basic data structures I
Learning objectives: Introduce the list, indexing, and list methods.
Course design: Computer demonstrations and apply flow controls to list. |
ABSP Ch4, JupyterLab
|
□面授 ▓遠距 |
7 |
Basic data structures II
Learning objectives: Introduce dict and tuple; keys and values; mutable and immutable data structures.
Course design: Computer demonstrations and applications of data structures.
Assessment: Homework 4 |
ABSP Ch5, JupyterLab
|
□面授 ▓遠距 |
8 |
NumPy and Pandas I
Learning objectives: Numerical computations in Python, arrays, and matrix operations.
Course design: Computer demonstrations and applications of NumPy. |
PDA Ch4,5, JupyterLab
|
□面授 ▓遠距 |
9 |
NumPy and Pandas II
Learning objectives: Pandas dataframe; attributes and methods of dataframe. Data import and cleaning.
Course design: Computer demonstrations and data analysis with NumPy and Pandas.
Assessment: Homework 5 |
PDA Ch6,7,8, JupyterLab
|
□面授 ▓遠距 |
10 |
Web-scraping
Learning objectives: Automate data gathering from websites; Application Programming Interface (API).
Course design: Computer demonstrations and applications of API with economics and finance data. |
ABSP Ch12, JupyterLab |
□面授 ▓遠距 |
11 |
Brainstorming session for project
Learning objectives: Encourage innovation through a capstone project. Develop a roadmap for doing data analytics with business applications. Discuss the feasibility of students’ ideas. Q&A on technical issues.
Course design: Group discussions and in-class presentations. |
Classroom session to discuss with students on potential topics for the semester project. |
▓面授 □遠距 |
12 |
Data visualization
Learning objectives: Visualize data with matplotlib and seaborn. Compare and constrast data visualization tools.
Course design: Computer demonstrations and interactive plotting with real-world data.
Assessment: Homework 6 |
PDA Ch9, JupyterLab
|
□面授 ▓遠距 |
13 |
Manipulating strings
Learning objectives: Methods and functions for manipulating strings. Import and export string data.
Course design: Computer demonstrations. |
ABSP Ch6, JupyterLab |
□面授 ▓遠距 |
14 |
Textual analysis
Learning objectives: Dictionary approach for counting words; word clouds; document-term matrix; text-mining.
Course design: Computer demonstrations with applications of English and Chinese corpora. |
Lecture notes and JupyterLab |
□面授 ▓遠距 |
15 |
Project presentations
Learning objectives: Students present their projects on business analytics with Python
Course design: Group discussions and in-class presentations. |
Classroom session |
▓面授 □遠距 |
16 |
Project presentations
Learning objectives: Students present their projects on business analytics with Python
Course design: Group discussions and in-class presentations. |
Classroom session |
▓面授 □遠距 |
17 (17+1) |
NumPy, SciPy, and Statsmodels
Learning objectives: Scientifical computing and statistical modeling with Python.
Course design: Computer demonstrations with applications of econometrics and optimizations.
Assessment: Homework 7 |
Lecture notes and JupyterLab |
□面授 ▓遠距 |
18 |
Final online examination
Exam design: Examinations with different question types including multiple choices, short computations, data gathering, data analysis, debugging, and code writing problems. |
|
□面授 ▓遠距 |