Syllabus
Description
STAT 33A is a course that introduces the R statistical software to students with minimal prior exposure to programming.
The course aims to prepare students to carry out a basic data analysis and to write simple functions. The focus is on the computational model that underlies the R language with the goal of providing a foundation for further coding.
Topics include (not necessarily covered in the following order):
- 🔠 data types and data structures in R (e.g. vectors, arrays, lists, data frames)
- 🔄 the REPL (read-evaluate-print loop) evaluation model
- 📢 Function calls
- 📑 Argument matching
- 📝 Writing simple functions
- 🔀 Control flow structures (e.g. conditionals, iterations)
- 🔨 Tidyverse tools for data manipulation
- 📊 Tidyverse tools for data visualization
- 📥 Data input/output
- ➕ The formula language of R (time permitting)
🏫 Course Culture
Students taking Stat 33A come from a wide range of backgrounds. We hope to foster an inclusive and supportive learning environment based on curiosity rather than competition. All members of the course community—the instructor, GSI, students, and readers—are expected to treat each other with courtesy and respect.
You will be interacting with course staff and fellow students in several different environments: in class, in lab, over the discussion forum, and in office hours. Some of these will be in person, some of them will be online, but the same expectations hold: be kind, be respectful, be professional.
If you are concerned about classroom environment issues created by other students or course staff, please come talk to us about it.
ℹ️ Prerequisites
This course does not have any prerequisites, although it would be nice if you have taken an introductory course in statistics (e.g. Stat 2, 20).
The curriculum and format is designed specifically for students who have minimal (or none) programming experience. Students with some exposure to programming concepts, and data analysis should not be taking this course; instead they should consider other courses such as STAT 33B Advanced Programming in R, or STAT 133 Concepts in Computing with Data.
Expectations
This is a programming course rather than a math or statistics course. Programming is a broad topic, so it’s not possible for lecture to provide you with a specific recipe for every situation you may encounter. Instead, one of the goals of this class is to help you become comfortable reading documentation or asking for help.
We don’t expect that you will become an R ninja, or a super coder. That takes YEARS of practice and learning. Instead, we want to give you a good foundation to understand R’s programming language.
The lectures tend to be focused on discussing programming concepts in general, as well as R specific programming aspects. In turn, the focus of the lab is on learning how to apply/use them in practice. Do not be surprised or worried about not following the details of R code during class – that is not the point (furthermore, there will sometimes be code that is really specific to the instructional purposes of the lecture, e.g. to make a specific plot, and is beyond the scope of what you would be expected to understand or know how to do it by yourself).
📚 Textbooks
We’ll be using a couple of textbooks (based on the notes about R that I’ve authored in the last 9 years):
⏳ Waitlisted Students and Late Joining
If you are on the waiting list or have a pending application or added the course late, you must still do all coursework and complete labs and homework by the deadlines. We will not be offering extensions/exceptions if you are admitted/enrolled into the course later. So it is your responsibility to stay up to date on the assignments.
Unfortunately, doing all the work is not a guarantee of enrollment. You will only be enrolled if there is space in your lab. Enrollment will proceed by CalCentral.
🚪 Office hours
Me (the instructor) and the GSI will offer office hours each week across a range of times. We may adjust the office hour schedule throughout the semester as we understand student needs and preferences. Please check the office hours tab on the staff page to see the times of the various OH sessions.
🔬 Labs (10% of final grade)
- Weekly lab discussions are an essential part of the course and we will introduce concepts not necessarily covered in class.
- Mondays are the official days for lab section.
- You must attend the lab section you are officially enrolled in.
- During lab, you will work on short-form assignments designed to apply the concepts on real and simulated data sets.
- Lab assignments will be released every Monday (available in bCourses),
- The due date is always on a Tuesday at 11:59pm (please check the assignments tab in bCourses to keep track of deadlines).
- If you don’t submit all required files, you will receive an automatic 10% deduction.
- Solutions to lab assignments will be available a few days after their due date.
- We will be giving credit on lab assignments based on completion.
- Lab-1 and Lab-4 will not count toward your grade.
- From the remaining lab assignments, your lowest score will be dropped in the calculation of your overall grade.
📁 Homework (60% of final grade)
- There will be 6 homework assignments. These are basically problem sets assigned every two weeks (available in bCourses).
- The due date is always on a Friday at 11:59pm (please check the assignments tab in bCourses to keep track of deadlines).
- You will have to submit the files of your HW assignments to bCourses.
- You must write your own answers (using your own words and/or code). Copy and plagiarism will not be tolerated (see Academic Honesty policy).
- If you don’t submit all required files, you will receive an automatic 10% deduction.
- If you submit the incorrect files, you will receive no credit.
- Solutions will become available a few days after the due date.
- We will not drop any HW assignments in the calculation of your overall grade.
🕚 Late Submission Policy
Given that STAT 33A is a 1-unit course, unless you have applicable DSP accommodations, we won’t be able to offer extensions. Instead, we have the following late submission policy.
In case you are not able to turn in a Lab assignment on time:
- Submissions within 24 hours after the deadline will receive an 11% deduction.
- Submissions that are 24 hours or more after the deadline will receive no credit.
In case you are not able to turn in a HW assignment on time:
- Submissions within 24 hours after the deadline will receive an 11% deduction.
- Submissions within 48 hours after the deadline will receive a 22% deduction.
- Submissions within 72 hours after the deadline will receive a 33% deduction.
- Submissions that are 72 hours or more after the deadline will receive no credit.
This late submission policy is in place to take care of any extenuating circumstances that prevent you from submitting a Lab or HW assignment by the due date.
Please plan ahead and pace yourself. Don’t wait until the last day to do an assignment.
Don’t wait until the last minute to submit your assignments.
📝 Quizzes (8% of final grade)
- There will be 2 timed quizzes.
- Quiz-1 is scheduled on Mar-7th, and Quiz-2 on Apr-11th.
- Each quiz will be available in bCourses during some time TBD on a Friday.
- More information about the quizzes will be announced in bCourses as we approach their due date.
- You will be able to see the correct answers a couple of days after the quiz due date.
- More information about the quizzes will be announced in bCourses as we approach their due dates.
- No quiz scores will be dropped in the calculation of your overall grade.
📝 Final Exam (22% of final grade)
- There will be one final exam.
- The final exam will be on Tue May-13th (7pm-10pm), as scheduled by the University.
- More information about the final examination will be announced in bCourses as we approach its due date.
- Unless you have accommodations as determined by the university and approved by the instructor, you must take the exam at the date and times displayed in CalCentral.
- Please check your course schedule and make sure that you can take the final exam on the date indicated above. Otherwise, do not take the class if you are not available at this date.
💯 Grading Structure
Grades will be assigned using the following scheme:
- 10% Lab (1 drop)
- 60% HW (no drops)
- 8% Quizzes (no drops)
- 22% Final Exam
To complete the course, you must take the final exam.
To try to keep grading consistent across semesters, I may occasionally curve an individual assignment. I will do this only if I made the assignment or exam harder than I intended, and no one’s scores will decrease as a result of the curve. This will happen very rarely, probably not at all.
To give you a rough idea of the grading scheme, the assignment of letter grades in previous semesters has been as follows:
- 😀 90-100% (Excellent) A-/A range
- 🙂 80-90% (Good) B-/B/B+ range
- 😐 70-80% (Fair) C-/C/C+ range
- 🙁 60-70% (Deficient) D
- 😞 Below 60% (Failed) F
If you are taking the class pass-fail, the cut-off for passing is 70% (C-).
As a matter of course policy, I do not round up when calculating letter grades. Ex: if your overall score is 79.9999%, then the highest letter grade that you can expect is a C+, not a B-.
There is no curve; your grade will depend only on how well you do, and not on how well everyone else does.
Letter grades are final; I don’t enter into negotiations with students about grades.
Please do not engage in grade grubbing.
Also, please remember that we grade your course performance, not your personal worth.
⚠️ Generative A.I. Policy
Generative A.I. refers to artificial intelligence technologies, like those used for ChatGPT and similar, that can draw on a large corpus of training data to create new written, visual, or audio content.
There are two principles we use to guide our class policy on AI use:
- Cognitive dimension: Working with AI should not reduce your ability to think clearly. The use of AI should facilitate—rather than hinder—learning.
- Ethical dimension: Students using AI should be transparent about their use and make sure it aligns with academic integrity.
In this course, we’ll be developing skills that are important to practice on your own. Because use of generative A.I. may inhibit the development of those skills, the use of these tools is permitted in this course for the following activities:
- Brainstorming and refining your ideas;
- Fine tuning your exploratory/research questions;
- Drafting an outline to organize your thoughts;
- Checking syntax errors or bugs in your code; and
- Polishing your spelling and grammar.
The use of generative A.I. tools is not permitted in this course for the following activities:
- Impersonating you in classroom contexts, such as by using the tool to compose discussion board prompts assigned to you or content that you put into a discussion forum/chat.
- Attempting to pass off AI-generated work as your own.
- Writing a draft of your assignment.
- Writing entire blocks of code, functions, or scripts to complete class assignments.
Please keep in mind that use of generative A.I. tools can impede your learning by generating ideas for you before you had a chance to think of your own ideas; inhibiting the development of your own writing skills; generating factually inaccurate statements or fictional reference sources; etc.
If you are unsure of whether and how much of a submission has been AI-generated, or whether you are in violation of a certain policy, please reach out to us and ask for guidance.
☝️ Academic Honesty
You should not share your code or answers, directly or indirectly, with other students. Doing so doesn’t help them; it just sets them up for trouble on exams. Feel free to discuss the problems with others beforehand, but not the solutions. Please complete your own work and keep it to yourself (e.g. avoid sharing it in hosting platforms like Github or similar). If you suspect other people may be plagiarizing you, let us know ASAP.
We expect you to do your own work and to uphold the standards of intellectual integrity. Collaborating on homework is fine and we encourage you to work together—but copying is not, nor is having somebody else submit assignments for you. Likewise, obtaining and/or using solutions from previous years or from the internet, if such happen to be available, is considered cheating.
Beyond the templates or starting code provided by the teaching staff, any writing, code, media, or other submissions not explicitly identified as AI-generated will be assumed as original to the student. Submitting AI-generated work without identifying it as such will be considered a violation of the Code of Student Conduct.
Cheating will not be tolerated. Any evidence of academic misconduct will result in a score of zero (0) on the entire assignment or examination, and a failing letter grade. We will always report incidences of cheating to the Center for Student Conduct.
If you are having trouble with an assignment or studying for an exam, or if you are uncertain about permissible and impermissible conduct or collaboration, please contact us.
Rather than copying someone else’s work, ask for help. You are not alone in this course! The course staff is here to help you succeed. If you invest the time to learn the material and complete the projects, you won’t need to copy any answers.
✉️ Email Policy
If you wish for your email to make it into our inbox, the subject of your email must contain the text: Stat 33A.
Please refer to my email guidelines for more information: communication via email
🚸 Special Accommodations
Students needing accommodations for any physical, psychological, or learning disability, should contact the teaching staff during the first two weeks of the semester, and see http://dsp.berkeley.edu to learn about Berkeley’s policy. If you are a DSP student, please contact us at least three weeks prior to a midterm or final so that we can work out acceptable accommodations.
For relevant DSP accommodations that provide occasional extensions on assignments, please see the above Late Policy.
❗Incomplete Grade
Under emergency/special circumstances, students may petition me to receive an Incomplete grade. By University policy, for a student to get an Incomplete requires (i) that the student was performing passing-level work until the time that (ii) something happened that—through no fault of the student—prevented the student from completing the coursework. If you take the final, you completed the course, even if you took it while ill, exhausted, mourning, etc. The time to talk to me about incomplete grades is BEFORE you take the final (several weeks before), when the situation that prevents you from finishing the course presents itself. Please clearly state your reasoning in your comments to me.
It is your responsibility to develop good time management skills, good studying habits, know your limits, and learn to ask for professional help. Life happens. Social, family, cultural, scholar, and individual circumstances can affect your performance (both positive and negatively). If you find yourself in a situation that raises concerns about passing the course, please contact me as soon as possible.
Above all, please-please-please do not wait till the end of the semester to share your concerns about passing the course because it will be too late by then.
🌻 Safe and Inclusive Environment
Whenever a faculty member, staff member, post-doc, or GSI is responsible for the supervision of a student, a personal relationship between them of a romantic or sexual nature, even if consensual, is against university policy. Any such relationship jeopardizes the integrity of the educational process.
Although faculty and staff can act as excellent resources for students, you should be aware that they are required to report any violations of this campus policy. If you wish to have a confidential discussion on matters related to this policy, you may contact the Confidential Care Advocates on campus for support related to counseling or sensitive issues. Appointments can be made by calling (510) 642-1988.
The classroom, lab, and work place should be safe and inclusive environments for everyone. The Office for the Prevention of Harassment and Discrimination (OPHD) is responsible for ensuring the University provides an environment for faculty, staff and students that is free from discrimination and harassment on the basis of categories including race, color, national origin, age, sex, gender, gender identity, and sexual orientation. Questions or concerns? Call (510) 643-7985, email ask_ophd@berkeley.edu, or go to https://svsh.berkeley.edu/.
🎉 Last But Not Least
The main goal of STAT 33A is that you should learn, and have a fantastic experience doing so. Please keep that goal in mind throughout the semester.