Please note that the specifics of this Course Syllabus are subject to change. Instructors will notify students of any changes and students will be responsible for abiding by them. Even if you print this syllabus, please check the online version often.
DS 120: Scripting for Data Sciences (1 credit) Introductory course in computer-based scripting languages for use in data analyses.
This introductory course aims to teach practical skills in data manipulation and preprocessing scripting, including the fundamentals of an interpreted programming language for use in the data sciences. The goal of the course is to provide an accessible (no prerequisites) and brief (1 credit) introduction, preparing students for hands-on data analytics assignments in DS 200 (Introduction to Data Sciences). This practical course teaches fast manipulation of datasets on the Unix command line, scripting in spreadsheets, and fundamental control structures and data manipulation in a modern interpreted programming language. It is expected that students gain an overview of the available tools and techniques that allows them to acquire basic proficiency in select techniques in the course of applications in most other courses in Data Sciences.
Upon completion of this course, students will be able to:
- Write and run basic routines in a scripting language (Python) to:
- Modify strings
- Parse files
- Create and change various data types (lists, dictionaries, tuples)
- Manipulate files using standard Unix commands on a command line to understand alternatives to graphical user interfaces.
Sweigart, A. (2015). Automate the boring stuff with Python: Practical programming for total beginners. No Starch Press. ISBN 9781593275990
- Also available here: https://automatetheboringstuff.com/
- Assigned readings are available online via direct links within the course.
- Beginning for the Fall 2020 semester, a Practice Lab access code may need to be purchased at an additional cost from the B&N bookstore.
Assignments & Grading
|Grading Category||Percentage of Final Grade|
Much of this course work will be hands on programming. The best way to learn the concepts we will be reading about is to work directly with them. We will have weekly programming assignments that will help you demonstrate the concepts we are learning together. At times you will be asked to complete the assignments on your own (with help from a starter file) and at times you are given a video to follow along and complete the assignment.
- Review Questions (300 points) - Some chapters will have review questions that cover the key concepts learned in that chapter, and are more open ended questions than programming questions for you to answer. It is important to show your ability to understand and communicate these concepts.
- Programming (600 points) - These assignments will build on the in class work we do and incorporate previous lessons to ensure that we are continuing to work on the skills we’ve learned in previous weeks.
Reflection Paper (100 points) - You will be asked to complete a reflection paper on the overall course. The purpose of this reflection paper is thinking critically about this course, and what you learned throughout the semester (500-750 words). For example:
- How does the course challenge you?
- Has the course changed your way of thinking?
- Are you left with any questions? Were these questions ones you had previously or ones you developed only after finishing?
- Did we fail to address any important issues? Could a certain fact or idea have dramatically changed the impact of your experience in this class?
- How do the concepts brought up in this course mesh with past experiences or classes? Do the ideas contradict or support each other?
Course Grading Scale
The following are minimum cutoffs for each grade:
- 93.00% = A
- 90.00% = A-
- 87.00% = B+
- 83.00% = B
- 80.00% = B-
- 77.00% = C+
- 70.00% = C
- 60.00% = D
- less than 60.00% = F
Course Policies and Expectations
- Logging into Canvas - Students are expected to login regularly to check for course updates, announcements, emails, discussions, etc.
- Emailing through Canvas - Students are expected to use Canvas for all course email communication.
- Attending virtual meetings - Students are expected to use specified virtual meeting tool(s) for collaboration, meetings, presentations, etc., as needed.
Penn State and the College of Information Sciences and Technology are committed to maintaining Penn State's policy on Academic Integrity in this and all other courses. We take academic integrity matters seriously and expect you to become a partner to the University/College standards of academic excellence.
For more information, please review these policies and procedures:
While utilizing additional sources outside of this class is encouraged for gaining a better understanding of course concepts, seeking explicit answers for graded assignments from outside sources (e.g. Course Hero, Chegg, tutoring services like tutor.com, etc.) is considered CHEATING and will not be tolerated. Sanctions range from failure of the assignment or course to dismissal from the University. Additionally, sharing course content without permission is a violation of copyright and may result in university sanctions and/or legal ramifications. Contact your instructor with questions related to this topic.
Review current information regarding various Penn State policies (such as copyright, counseling, psychological services, disability and military accommodations, discrimination, harassment, emergencies, trade names, etc.) on the University Policies page.
Penn State takes great pride to foster a diverse and inclusive environment for students, faculty, and staff. Acts of intolerance, discrimination, or harassment due to age, ancestry, color, disability, gender, gender identity, national origin, race, religious belief, sexual orientation, or veteran status are not tolerated and can be reported through Educational Equity via the Report Bias webpage (http://equity.psu.edu/reportbias/).
Find extensive information and links to many Penn State and IST resources (including the Penn State libraries, video conferencing tools, technology and software, writing and research help, and much more) on the Resources page.
Standard World Campus computer technical specifications are assumed for this course. Please test your computer for requirements. In addition, a webcam and a headset with a microphone are REQUIRED for the course. These may be used for virtual meetings, virtual office hours, interactions with classmates and your instructor, and group presentations - which are all conducted with virtual meeting tools. No special software is required.
The following schedule outlines the topics covered in this course, along with the associated time frames, readings, activities, and assignments. All due dates reflect Eastern Time (ET). Specifying the time zone ensures that all students have the same deadlines, regardless of where they live.
The syllabus page shows a table-oriented view of the course schedule, and the basics of course grading. You can add any other comments, notes, or thoughts you have about the course structure, course policies or anything else.
To add some comments, click the "Edit" link at the top.