Вы находитесь на странице: 1из 6

Nanyang Technological University

Nanyang Business School

AB8401 Programming & Data Analytics

Semester 1, AY2019-20
Academic Unit: 3.0
Pre-requisite: -

Course Description & Scope


This is an introductory course designed for business or accountancy undergraduate
students who have no programming background and are interested to learn how to
manage data and conduct business analytics programmatically. It is oriented to
enhance their technical skillset. The aim of this course is to provide a broad
understanding on how to manage data, the process of preparing data for analysis,
basics of analytics, and the means to communicate analytics outcome. This course
will equip students with the ability to write customized solutions to inform business
decision, integrate statistical libraries for data analysis, and construct visuals or reports
for business understanding. This module will provide students with individual hands-
on practices to hone their coding skills and opportunities to develop coding solutions
in a team. We utilize Python language as the medium of learning because it is one of
the most in-demand coding language and its user-friendly syntax is well suited for the
beginner level. You will utilise modern development tools to turn information into
insights.

You will learn to understand the development environment of programming language.


Then move on to pick up language semantics like coding syntax, variables, methods,
functions, mathematical operators, Boolean operators, decisions, compound decision,
control structures and iterations. These will help you to build a holistic understanding
on programming basics and the ability to write code independently. The course will
also cover foundation of business analytics including how to define problem
statements in the business context, data preparation, data transformation, data
consolidation, data analysis, and data visualization.

Course Learning Objectives


By the end of this course, you (as a student) would be able to:
1. Interpret elements of programming components and distinguish different
programming syntax, control structures, data types and design methods.
2. Write codes that allow you to solve simple business problem
programmatically.
3. Data selection and connect codes to external source.
4. Manage data to sufficiently derive and communicate analytics outcome.
5. Apply appropriate statistical and graphing modules or use visualization
software to present data graphically.
Learning and Teaching Method
This course adopts a blended learning approach where asynchronous e-learning and
synchronous teaching in seminar setting are combined to achieve learning objectives.
You will learn through a wide range of learning materials, such as online references,
textbooks, videos, pre-readings, in-class activities, coding discussion and group work.
Students are to complete pre-seminar materials prior to each week of seminar.
- Total 13 sessions.
- Each week 3 hours of seminar.
- Course starts in week 1.

Course Assessment

Component Weightage
1. Class Participation 20%
2. Practical Assessment (PA) 40%
3. Group Project 30%
4. Group Presentation 10%
Total 100%

Readings and References


You may refer to any resources that aids your understanding, some suggested
references are listed below.
Recommended Online Reference:
(PT) Python 3 Tutorial: https://docs.python.org/3/tutorial/
(TT) Tableau Tutorial: https://onlinehelp.tableau.com/current/guides/get-started-tutorial/en-
us/get-started-tutorial-home.html
(SQ) SQLite Library: https://www.sqlite.org/index.html
(PL) Pandas Library: https://pandas.pydata.org/
(MP) Matplot Library: https://matplotlib.org/

Textbooks:
(WP) William F. Punch, The Practice of Computing Using Python, 3rd Edition, 2017, Pearson,
ISBN 978-1-2921-6668-1.

(ML) Mark Lutz, Learning Python, 5th Edition, 2013, O’Reilly Media, ISBN 978-1-4493-5573-
9.

(WW) William Wesley McKinney, Python for Data Analysis, 2nd edition, 2017, O’Reilly Media,
ISBN 978-1-4919-5766-0.

(SW) S. Christian Albright and Wayne L. Winston, Business Analytics, 2017, 6th edition,
Cengage Learning, ISBN 978-1-305-94754-2.

(SB) Steven Bird, Ewan Klein & Edward Loper, Natural Language Processing with Python,
3rd edition, 2009, O’Reilly, ISBN 978-0596516499.
Course Schedule

Week Topic Readings/ Activities


1 Course Introduction & Programming Basic:
• Installation and programming Installation guide;
environment WP Chp 1;
• Programming syntax ML Chp 1, 2, 3
• Variables
• Basic data types
2 Operators:
• Mathematical operators WP Chp 1, 2
• Comparison operators ML Chp 34
• Logical operators
• Debugging and Exception Handling
3 Control and Function:
WP Chp 2, 5
• Decision
ML Chp 12, 13, 16
• Iterations
• Function design
4 Data Types:
• String WP Chp 4, 7
• List ML Chp 5, 7, 8
• Tuple
5 File Input and Output:
• Dictionary
• List and Dictionary Comprehension WP Chp 9, 14
• File reading and writing ML Chp 14
• Processing text/CSV files
• The urllib package for network connection
6 Object Oriented Programming:
WP Chp 11, 12
• Object
ML Chp 25
• Class
• Inheritance
7 Connect Codes to Data Source:
• SQL basic SQL Documentation
• Data Manipulation Language
Recess Week
8 Data Preparation & Descriptive Analysis:
• Dataframe WW Chp 4, 5, 7
• Data wrangling PL Documentation
• Data cleaning PA I
• Descriptive analysis
9 Data Visualization:
• Plotting in Python MP Documentation
• Data visualization in Tableau TT Tutorial
• Dynamic data visualization
10 Cluster and Regression Analysis:
PL Documentation
• Clustering Analysis
SW Chp 10
• Regression Analysis
11 Text Analytics (eLearning):
• Web scraping for unstructured data
SR Chp 8
• Text analytics
• Text pre-processing
• Text classification
12 Revision & Practical Assessment PA II
13 Project Submission
Project Presentation
Due

Rubric 1 (Class Participation – assess Critical Thinking and Oral Communication)


ILO 1. Interpret elements of programming components and distinguish different programming
syntax, control structures, data types and design methods.
ILO 2. Write codes that allows you to solve simple business problem programmatically.

Traits Performance
Not Yet Substantially Developed
Participate and Insufficient participation in Able to communicate exceedingly well an
communicate classroom activities or making argument that addresses all the key points
thoughts and confusing statements. and recommendations. Actively
analysis in a participates with insightful comments.
succinct manner
Evaluation:
(assesses Oral Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed
Communication)

Not Yet Substantially Developed


Identifies and Unable to use appropriate coding Addresses main problem, and good use of
considers coding elements, especially those salient to coding elements to construct readable and
practices that the problem. Fail to see the main efficient codes to solve the problem.
are relevant to problem within the question.
the given Evaluation:
problem. Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed

(assess Critical
Thinking)

Rubric 2 (Practical Assessment – assess AK and PSDM)


ILO 1. Identify and use components in programming environment, distinguish different
programming syntax, control structures, data types and ways to design function.
ILO 2. Write codes that allows you to solve simple business problem programmatically.
ILO 3. Data selection and connect codes to external source.

Traits Performance
Not Yet Substantially Developed
Demonstrates Does not demonstrate Able to differentiate and use suitable data
understanding in data understanding of types in programming. Make good
types programming. Confuse judgement base on the given problem.
about the usage of data Good naming convention and coding
types. practice.

Evaluation:
Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed
Not Yet Substantially Developed
Does not demonstrate Excellent use of good coding practice,
Demonstrates ability of ability to use coding effective application of coding elements
using appropriate coding element. and algorithm. Good use of control
elements. structures, iteration and function design.
Evaluation:
Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed
Not Yet Substantially Developed
Does not demonstrate or Good understanding on the reference and
Demonstrates ability to not able to understand quote external reference needed to solve
draw relevant reference references. the problem and ability to adopt it into
to solve the problem different context.
Evaluation:
Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed
Not Yet Substantially Developed
No data model or code was Well-constructed solution and code and
Devise strategies to developed to suitably aid form comprehensive analysis which
construct proper model the analysis. examine the data from different
or code for analysis perspectives.

Evaluation:
Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed

Rubric 3 (Group Project – assess Problem Solving & Decision Making)


Learning Objective:
ILO 4. Manage data to sufficiently derive and communicate analytics outcome.
ILO 5. Apply appropriate statistical and graphing modules or use visualization software to
present data graphically.

Traits Performance
Not Yet Substantially Developed
Programming: Does not demonstrates Excellent use of good coding practice,
Demonstrates a basic understanding on coding effective application of coding elements
understanding of basic. and algorithm. Good use of control
essential coding structures, iteration and function design.
elements Evaluation:
Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed
Not Yet Substantially Developed
Analytics:
No analysis of problem and Excellent analysis of problem and propose
Analyses and evaluates
no solution is provided. well supported solution. Solution illustrates
problem and
Contradicting analysis is coherent understanding to solve the
implements appropriate
given. problem. Provides convincing analysis and
analytics solution
solution.
Evaluation:
Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed
Not Yet Substantially Developed
Merely repeats information Examines the data and source of evidence;
Identifies and assesses provided, taking it as truth, questions its accuracy, precision,
the quality of data given or denies evidence without relevance, and completeness. Carefully
and provides additional adequate justification. examines data with substantiated analysis
analysis related to the Analyses inadequately and supported by evidence.
issue. understanding of the data.
Evaluation:
Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed

Rubric 4 (Group Presentation – assess Oral Communication)


Learning Objective:
ILO 4. Manage data to sufficiently derive and communicate analytics outcome.
ILO 5. Apply appropriate statistical and graphing modules or use visualization software to
present data graphically.
Traits Performance
Not Yet Substantially Developed
Central message is not explicitly Central message is precisely stated;
stated in the presentation. Main main points are clearly identified.
points are not clearly identified,
Communication
audience unsure of the
Outcome
direction of the message.

Evaluation:
Not Yet 1 2 3 4 5 6 7 8 9 10 Substantially Developed
Not Yet Substantially Developed
Content is erroneous or Content is accurate, thorough, and
Relevant Content irrelevant; references and directly on point; strong support and
supporting materials are references are provided. Exhibits depth
absent. Lacks depth in content and insight in content. Effective use of
and little insights are exhibited. time and stays within time parameters.
Presentation falls outside set Excellent use of visualization to present
time parameters. Lack of data.
appropriate visualization.
Evaluation:
Not Yet 1 2 3 4 5 Substantially Developed
Not Yet Substantially Developed
No clear structure, no Organizational pattern is clearly and
Communication explanation for solution. consistently observable and makes the
Structure Organizational pattern (specific content of the presentation cohesive.
introduction and conclusion,
sequenced materials within the
body, and transitions) is not
observable.
Evaluation:
Not Yet 1 2 3 4 5 Substantially Developed

Оценить