In-class exam 1 information (Fall 2023)
Exam details:
- The exam starts at 4:00 PM and ends at 5:15 PM in our usual classroom, L196 Education. Get set up early and get logged in.
 - The exam and any needed files will be available on the course website under week 6.
 - You will need to upload your finished notebook to Canvas. Allow yourself enough time to get your file uploaded before 5:15 PM. You might want to log into Canvas before the exam starts, so you can easily upload it once finished.
 - The exam is open-book and open-Internet. Having to rely too much on books and the Internet will slow you down.
 - You cannot work with others on the exam. You cannot post questions online and solicit answers, e.g., through Chegg or chat GPT.
 - Material from the discussion sections will be tested on the exam.
 
Some suggestions for studying:
- Go over the notebooks we have covered in class (everything up to and including visualization)
 - Go over the coding practices.
 - You could try doing the practice parts from the class notebooks and the coding practice problems again, but without much outside help. Are there subjects that need more practice?
 - Take the practice exam as if it was a real exam. Keep track of time, and do not discuss the exam with others. Did you find subjects that could use more practice?
 
Extra office hours
- Monday 10/16 9:00 AM - 10:00 AM
 - By email
 
Topics (a non-exhaustive list)
This list is meant to help you guide your studying. It is not, however, an exhaustive list of everything that I might ask about on the exam. Anything we have covered in class or in 15-minute Friday notebooks might show up on the exam.
Markdown
- Fonts (bold, italic, etc)
 - Lists (ordered, unordered)
 - Links
 - Formatted code
 
Python basics
- Types (how to find a type, how to convert)
 - Working with lists, strings (including string formatting), and dicts
 - Bools and if statements, conditional statements
 - Loops and list comprehensions
 - Slicing
 - User-defined functions, keyword and positional arguments
 
Pandas
- Creating DataFrames (from a dict, from a file, handling messy files)
 - Working with the index
 - Dealing with column names
 - Computation on DataFrames
 - Summary statistics from a DataFrame
 - Taking subsets (row and/or columns) from a DataFrame (using .loc[], using conditional statements)
 
Matplotlib
- Creating a plot from a DataFrame
 - Line plots
 - Changing line color, style, alpha
 - Labeling components of a figure
 - Histograms
 - Subfigures
 
Visualization
- Audience/message/medium
 - What are line plots / scatter plots / bar plots / histograms / maps good for? (you do not need to make scatter, bar or maps)
 - Using color
 - I might give you a figure and ask you to critique it