EECS 690 (3 credit hours) Special topics: Data Science -- Spring 2026
Meets in person Tuesdays and Thursdays, 11:00 am - 12:15 pm, LEEP2 2425
Teaching website: people.eecs.ku.edu/~saiedian/Teaching
This course delivers a thorough, hands-on exploration of the core concepts in data science, utilizing essential programming languages such as Python, R, SQL, and Unix shell. Students navigate the entire data science lifecycle—from data collection and cleaning to analysis, visualization, and data-driven decision-making. They master key techniques including data mining, statistical analysis, and predictive modeling (including classification, regression, and clustering). Real-world case studies in science, engineering, and business present opportunities to tackle diverse challenges by formulating questions, gathering and analyzing data, and developing deployable models. Students also explore critical topics such as ethics, privacy, security, and big data architecture. Prerequisites include experience in Python programming and an introduction to statistics.
There are no required textbooks for this course, but contents from the following texts will be used.
![]() |
Tiffany Timbers, Trevor Campbell, and Melissa Lee, Data Science: A First Introduction, Taylor and Francis, 2024. |
|
|
|
![]() |
Joel Grus, Data Science from Scratch, O'Reilly, 2019 |
🎯Exams: 50%
🗂️Mini-Projects: 30%
📈Term-Projects: 20%
Term projects. Students will form teams of 5–6 to complete collaborative projects. For software engineering courses, the Scrum agile methodology will be used, with a Teaching Assistant serving as the co-Scrum Master. Precise term project description and due dates are on Canvas.
Assignments. Assignments may take a variety of forms, including labs, homework exercises, in‑class activities, or mini‑projects. Students are expected to complete assigned work both inside and outside the classroom as appropriate for the course. In courses that include hands‑on laboratory components (such as software engineering course), certain lab activities must be completed during scheduled lab sessions under TA supervision to ensure academic integrity; work completed outside the lab in these cases will not receive credit. Full assignment descriptions, requirements, and due dates are provided on Canvas.
Exams and quizzes. Exams and quizzes will be conducted in-person in the classroom and are closed-book and closed-notes, administered via Canvas. Bring a device capable of accessing Canvas for all exams and quizzes. During testing, no other devices, files, or applications may be used, and only one browser tab (for Canvas) is permitted. Unauthorized use of additional resources will result in a violation of academic integrity policies.
Submission format policy. All course work—including
assignments, reports, and projects—must be typeset and
submitted electronically via Canvas. Please note that
“typeset” refers to work composed using digital tools
(e.g., word processors,
,
image editing software, etc.).
Handwritten or hand-drawn submissions will not be accepted.
Students are responsible for engaging with all course materials, including lecture slides, topics covered in class discussions, assigned readings, and supplementary resources (e.g., handouts, code samples, or project guidelines) distributed during class sessions. All materials will be posted on Canvas, and students are expected to regularly check Canvas for updates to ensure they remain informed and prepared. Active engagement with these resources is critical for success in assignments, projects, and exams, and aligns with the course’s emphasis on professional responsibility and self-directed learning.
Course announcements (Canvas)
Lecture slides (Canvas)
Readings (Canvas)
Project resources (Canvas)
Throughout the semester, we may host guest speakers who bring
valuable insights and real-world perspectives related to the
course material. Attendance during these sessions is especially
important, as guest speakers may not provide lecture slides
or written materials. Students are expected to take careful
notes and engage respectfully. These sessions may include
content relevant to assignments or exams.
This course is not curved in the traditional sense. I do not
set a fixed class average (e.g., a "B") and scale grades to fit
a predetermined distribution. Instead, I ask one fundamental
question: “Has this student mastered the material?”
If every student demonstrates clear mastery of the course
content, then every student earns an A. Grades are not a
measure of relative ranking—they are a reflection of your
personal understanding and engagement with the work.
I encourage you to shift your focus away from grade
anxiety. Instead, concentrate on being present, asking
questions, exploring ideas, and participating fully in the
learning process. In return, I promise to be fair, transparent,
and extra supportive. We are in this together, and I want each of
you to succeed—not just by earning a grade, but by growing
as scholars and professionals.
I am genuinely invested in your progress, and nothing would
make me happier than seeing every student earn an A through
honest work and intellectual curiosity.
The above said, final course grades will be determined by
the total percentage of points earned. The following standard
scale will be used: Grading philosophy and scale
All lecture notes (slides) are on Canvas
Week 1: January 20 and January 22
Course introduction
Big data
Data life cycle:
Data collection and pre-processing,
Data cleaning,
Data integration,
Data transformation,
Data discretization
Structured vs semi-structured vs unstructured data
Week 2: January 27 and January 29
What is data science: Big data characteristics
Applicaitons of data science
Data science relation to other fields:
Statistics,
Computer science,
Engineering,
Business analytics,
Social sciences
Data collection and pre-processing (with a case study)
➡️Case study: Excessive wine consumption and mortality
Week 3: February 3 and February 5
Using Pandas and Altair (with a case study)
Load and explore a dataset
Apply data frame selection, filtering,
transformation
Visualization and customization
Data science techniques
Descriptive analysis (presented with multiple
case studies)
Exploratory analysis (presented with a case study)
Predictive analytics
Inferential analysis
Causal analysis
Mechanistic analysis
➡️Case study: Canadian languages
Learning objectives: Load, explore, filter, and transform datasets using Pandas, then visualize with Altair.
Due: Please visit Canvas for full project description and due date
Week 4: February 10 and February 12
Tuesday February 10: Exam 1
Tools and skills for data science
Reading data in varying format and sources
Reading data from the web and from a database
Intro to data cleaning and wrangling
Web scraping
➡️Case study: Canadian languages
Week 5: February 17 and February 19
Data cleaning and wrangling
Common wrangling functions
Common statistical summaries
Python data structures
Pandas data frames, Tidy data format
Extracting and merging rows, columns,
advanced selections
Aggregating data, summary statistics,
group calculations
Learning objectives: Read data from various file formats into Python and create basic visualizations with Altair.
Due: Please visit Canvas for full project description and due date
Learning objectives: Read data from databases using ibis library and visualize it with Altair.
Due: Please visit Canvas for full project description and due date
➡️Case study: Mauna Loa CO2, Old Faithful geyser, Earth landmass
Week 6: February 24 and February 26
Data science visualization
Fundamentals of Grammar of Graphics
Saving visualizations (raster vs vector)
Visualization guidelines
Altair, ggplot2, Vega-Lite libraries
When to choose scatter, line, bar, histogram, ...
➡️Case study: Mauna Loa CO2, Old Faithful geyser, Earth landmass
Learning objectives: Understand and construct tidy data frames through manipulation and cleaning techniques.
Due: Please visit Canvas for full project description and due date
Week 7: March 3 and March 5
A preliminary introduction to ML
Why modeling, optimization models
Domain analysis/understanding
Cancer basics (for the case study)
Thursday March 5: Exam 2
Week 8: March 10 and March 12
Tools and skills for data science
Supervised learning
Classification (training and predicting)
Advanced classification (balancing, evaluation
and tuning)
➡️ Case study: Cancer study and dataset
Learning objectives: Further develop data visualization skills using Altair's advanced features.
Due: Please visit Canvas for full project description and due date
Week 9: March 17 and March 19
Spring break (March 16 - March 22)Week 10: March 24 and March 26
Tools and skills for data science (continued)
Classification: K-nearest neighbors
Classification: linear regression
➡️ Case study: Real estate transactions in Sacramento, CA
Week 11: March 31 and April 2
Tools and skills for data science (continued)
Classification: evaluation and tuning
Regression: linear regression
Learning objectives: Recognize appropriate situations for classifiers and understand prediction workflows.
Due: Please visit Canvas for full project description and due date
Week 12: April 7 and April 9
Tools and skills for data science (continued)
Regression: linear regression
Unsupervised learning
➡️ Case study: Penguin dataset from Palmer Station, Antarctica Ecological Research
Thursday April 09: Exam 3
Week 13: April 14 and April 16
Tools and skills for data science (continued)
Clustering techniques and analysis
Conceptual and logical data modeling
Database and SQL processing for data science
Learning objectives: Apply KNN regression, interpret outputs, and distinguish regression from classification.
Due: Please visit Canvas for full project description and due date
Week 14: April 21 and April 23
Statistical inference
Statitical sampling, sample distribution
Statitical Bootstrapping
Statitical Bootstrap distribution
➡️ Case study: Airbnb listings
➡️
Case study: New illness, new drug, few patients
Learning objectives: Apply K-means clustering, understand its algorithm, and evaluate its advantages/limitations. Due: Please visit Canvas for full project description and due date Week 15: April 28 and April 30
Data science tools and techniques revisited
Data collection evaluation,
comparing models, A/B testing Learning objectives: Identify real-world questions answerable through statistical inference methods. Due: Please visit Canvas for full project description and due date Week 16: May 5 and May 7
Model evaluation Learning objectives: Perform statistical inference and analyze sampling distributions using R programming. Due: Please visit Canvas for full project description and due date Week 17: May 13 only
iClicker is an interactive classroom response system that
allows students to engage actively by answering questions
and participating in polls. The University of Kansas has
secured an iClicker subscription for classroom use, and the
EECS department is incorporating this system into its courses
to boost student engagement. Participation in the iClicker
community is mandatory for this course.
When an iClicker notification is sent, students are briefly
polled to confirm receipt. If a student encounters a technical
issue, they should raise their hand to be acknowledged and
meet with the instructor immediately after class to manually
adjust the iClicker record.
Responding to iClicker notifications when not physically
present in the classroom is strictly prohibited.
It constitutes a deliberate act of academic dishonesty
and a direct violation of the University of Kansas code of
conduct. Logging attendance or submitting responses while
absent undermines the integrity of our learning environment
and disrespects both the instructor and fellow students who
are fully participating.
Violations will result in a mandatory meeting
with the EECS department chair to address the misconduct and
its implications.
Generative AI tools—such as ChatGPT, GitHub Copilot, Gemini ,
and others—can be valuable resources for learning. When used
appropriately, they may assist in brainstorming, exploring
ideas, and refining drafts. However, they must never
replace your own intellectual work.
These tools are akin to the writing center consultants, the EECS
programming tutors, and lab assistants: they can guide and support
but must not generate final submissions. Submitting
content primarily generated by AI is a violation of academic
integrity, comparable to submitting work completed
by someone else.
Unless explicitly permitted, all coursework must reflect
your original understanding, reasoning, and
expression. If you use AI tools at any stage of an
assignment, you are required to disclose that use via a brief
reflection, which must include:
Failure to disclose use of AI tools or submitting AI-generated
work as your own will be treated as academic
misconduct. Minimum consequences include a zero on
the assignment. Depending on severity, further penalties may
include failure in the course and formal
referral to the School of Engineering disciplinary
committee.
This course is designed to build your skills—not evaluate
the performance of generative tools. Authentic
engagement with course challenges leads to meaningful
growth. Overreliance on AI undermines both your learning and
the integrity of our academic community.
Intellectual honesty is not optional—it defines your
identity as an engineer, a scholar, and a professional.
The University of Kansas, the School of Engineering, and the
Department of Electrical Engineering & Computer Science (EECS)
maintain a zero-tolerance policy toward academic dishonesty
and misconduct. All students enrolled in this course are
expected to uphold the highest standards of integrity and
professionalism in their academic work.
Academic dishonesty includes, but is not limited to:
The minimum consequence for an academic integrity violation
is a zero on the item in question (e.g., lab, assignment,
quiz, or exam). Depending on severity, penalties may include
a grade reduction, a failing grade for the course, and formal
referral to the School of Engineering's disciplinary committee
for further review and sanctions.
All definitions and procedures follow institutional policy
and guidance outlined by the University of Kansas Office of
Student Affairs and the EECS Department. Students are expected
to be familiar with and adhere to these standards at all times.
Please also see KU's
academic misconduct policy
LMS features.
During exams or quizzes, only one device should be used,
with solely the Canvas app or a single browser tab for Canvas
open. Having any other app or file open will be considered a
violation of academic integrity.
To further facilitate academic integrity, the following features
of Canvas will be utilized:
Code of student rights and responsibility:
Code of Student Rights and Responsibilities
Keep in mind that when a person signs up to participate by
either uploading, and/or downloading, and/or using posted
material from these sites, the “terms of service” that are
agreed to do not protect the person when KU and/or the School
of Engineering decide to conduct investigations related to
academic misconduct (e.g., plagiarism and/or cheating).
In fact, EdTech services, like Chegg, retain contact information
of students who use their services and will release that
information, which is traceable, upon request. Using these
services constitutes academic misconduct, which is not tolerated
in the School of Engineering. It violates Article 3r, Section
6 of its Rules & Regulations, and may lead to grades of F
in compromised course(s), transcript citations of academic
misconduct, and expulsion from the University of Kansas.
If unsure about assignments, it is important that students use
the allowable available resources, such as instructor office
hours, graduate teaching assistants, and/or tutoring. The School
of Engineering wants students to be successful; cheating is
not the way to attain that success."
Attendance expectation. Regular attendance is essential for
success in this course and its lab components. Attendance will be
be recorded throughout the semester via iClicker.
More than three unexcused absences will result in a one-letter
reduction in the final course grade, which will be reflected
when grades are posted at the end of the term.
Excused absence requests. Requests for excused absences
must be submitted in advance and approved by the instructor,
except in cases of emergency.
Supporting documentation must be included with all requests.
For emergencies, notify the instructor as soon as possible
following the absence.
Examples of excusable absences are listed below.
Examples of
excusable absences.
Responsibility for missed work.
Students who miss class without a valid excuse are responsible
for obtaining missed materials. The instructor or the TAs
will not provide individual makeup lectures or one-on-one
instruction. It is the student's responsibility to stay informed
about course content and course updates.
Late-work, makeup policy.
Late work will not be accepted under any circumstances. Make-up
options for labs, quizzes, and exams are unavailable except
in cases of excused and verified absences.
Timing of make-up assessments.
Make-up quizzes and exams for excused absences must be completed
before the class session in which the quiz or exam content will
be reviewed or its answer key released. Make-up labs, assignments, or homework must be
completed within one week of the excused absence.
Make-up assessment integrity statement.
If granted permission to take a quiz or exam at a later time
due to an excused absence, the student must affirm
the following: “I acknowledge that I have been granted
the opportunity to complete this assessment as a result of an
officially excused absence from its original administration. I
hereby affirm that I have not sought,
received, or accessed any information regarding the content,
structure, or subject matter of this quiz or exam from
any individual who previously completed it. This includes,
but is not limited to, verbal conversations, written notes,
online discussions, messaging apps, shared files, or any
other form of communication. I understand that violating
this pledge constitutes academic misconduct and will result
in immediate disciplinary action, including a failing grade
on the assessment and referral to the School of Engineering
disciplinary committees.”
Technical problems. If you experience technical problems
with your EECS account or the EECS servers or the lab
equipment, please submit a support request help at:
https://tsc.ku.edu/request-support-engineering-tsc.
Inside classroom policy.
Students are expected to come to the class on time, be
attentive and engaged, conduct themselves professionally, and
avoid anything that could cause a distraction or detrimental
either for other students learning or for the instructor's
presentations. Profanity and swearing is not allowed.
Students are expected to actively participate in all classroom
presentations and discussions, ask questions, and regularly
make contributions such as offering comments, responding with
good answers, and providing feedback.
Canvas announcements.
Announcements is a Canvas tool to post important
information and updates to all members of a course. It is your
responsibility to regularly check your Canvas account for such
announcements (students may also receive an email notification
when a new announcement is posted).
Email communications
E-mail communication is fast, flexible, and effective. You have an
@ku.edu email account and you are expected to regularly check
it. Important information may also be communicated via email.
You are a student registered in a course offered by
the School of Engineering at the University of Kansas, a top regional
and a nationally ranked institution. Your communications, especially
written communications (composition, grammar, spelling, punctuation,
etc), should reflect that status.
Please include a descriptive subject in all emails, and for
course-related communications, begin the subject line with
EECS###.
Please follow these email guidelines and etiquettes.
Send text-only emails in text-only format. All classroom
assignments, labs, or projects should be typeset and submitted
on Canvas.
Other documents (e.g., documents for an excusable
absence) shoud be emailed in PDF or a well-known image format (e.g.,
JPG or PNG). See the Guidelines for submitting electronic documents.
Grade and absence clarification or correction.
If you believe your grades on an assignment, lab, quiz, or
exam are incorrect, you should formally submit a grade appeal
via email to the instructor within one week of receiving the
graded work. Similarly, if you have an excusable absence, and
you did not provide documentation prior to the absence, submit
relevant documentation within one week of the absence. Failure
to address concerns within these timeframes will result in
the decision becoming final. This timeline ensures timely
resolution and fairness for all parties involved.
Cell phone policy. Cell phones
should be turned off before coming to the classroom.
Cell phone use for the purposes of texting, email
or other social media should be avoided. Earphones
for music are OK during lab work or individualized
problem solving, as long as the volume allows you to
hear announcements. Also cell phone or other cameras
may be used to photograph projects and the whiteboard
but avoid shots that include the presenter or other students. Laptop/electronic device policy. The use of laptops,
tablets or similar devices is common for taking notes
but turn off audio and avoid any possible uses
that could cause distraction for others
(e.g., Web surfing or social media visits).
Incomplete grade policy. "Incomplete
(I) grades are used to note, temporarily, that students
have been unable to complete a portion of the required
course work during that semester due to circumstances
beyond their control. Incomplete work must be completed
and assigned an A-F or S/U grade within the time
period prescribed by the course instructor. After
one calendar year from the original grade due date,
an Incomplete (I) grade will automatically convert
to a grade of F or U, or the lapsed grade assigned by
the course instructor."
Also please review change of grade policy
here and
here.
Accommodations for students with disabilities.
The University of Kansas is committed to providing
equal opportunity for participation in all programs,
services and activities. Requests for special
accommodations may be made thru the
KU Student Access Services.
The Provost's freedom of expression statement .
"Our IRISE values will guide us and our students as we all
engage with each other in respectful freedom of expression.
In a setting as diverse as KU, we will inevitably encounter
ideas, opinions and philosophies that are different than
our own and which some personally find uncomfortable or
offensive. To be clear, threats, incitement of violence and
targeted harassment are not protected speech under the First
Amendment. Offensive speech, although it can be painful, is
generally considered protected speech. We need to strongly
encourage and facilitate civil and respectful discussion and
interaction. We simply must not inhibit or penalize expression
protected by the First Amendment."
Please also see:
The Provost's academic year welcome memo
KU's nondiscrimination, equal opportunity.
"The University of Kansas prohibits discrimination on the
basis of race, color, ethnicity, religion, sex, national
origin, age, ancestry, disability, status as a veteran,
sexual orientation, marital status, parental status, gender
identity, gender expression, and genetic information in the
University's programs and activities."
Please also see:
KU's statement on nondiscrimination and on
racial and ethnic harassment policy.
KU's sexual harassment policy.
"The University of Kansas prohibits sexual harassment and
is committed to preventing, correcting, and disciplining
incidents of unlawful harassment, including sexual harassment
and sexual assault."
Please also see
KU's statement on sexual harassment.
KU's mandatory reporter statement.
"The University of Kansas has decided that all employees, with
few exceptions, are responsible employees or mandatory reporters
who must report incidents of discrimination, harassment, and
sexual violence that they learn of in their employment at KU
to the Office of Civil Rights and Title IX. This includes
faculty members. As such, if you share information about
discrimination, harassment, or sexual violence with me, I
will have to relay that information to the Office of Civil
Rights and Title IX. I truly value your trust in me to share
that information and I want to be upfront about my requirement
as a mandatory reporter. If you are interested in contacting
KU’s confidential resources (those who do not have to make
disclosures to OCRTIX), there are: the Care Coordinator,
Melissa Foree; CAPS therapists; Watkins Health Care Providers;
and the Ombuds Office."
Please see
KU's statement on mandatory reporting.
KU's commercial note-taking ventures.
"Pursuant to the University of Kansas’ Policy on Commercial
Note-Taking Ventures, commercial note-taking is not permitted
in this course. Lecture notes and course
materials may be taken for personal use, for the purpose of
mastering the course material, and may not be sold to any person
or entity in any form. Any student engaged in or contributing
to the commercial exchange of notes or course materials will be
subject to discipline, including academic misconduct charges,
in accordance with University policy. Please note: note-taking
provided by a student volunteer for a student with a disability,
as a reasonable accommodation under the ADA, is not the same
as commercial note-taking and is not covered under this policy."
Please see
KU's statement on commercial note-taking.
Concealed handguns.
"Individuals who choose to carry concealed handguns are solely responsible to do
so in a safe and secure manner in strict conformity with state and federal laws
and KU weapons policy. Safety measures outlined in the KU weapons policy
specify that a concealed handgun:
The ACM's and IEEE's code of ethics. As IT and computing
professionals and/or as engineers, you should be familiar with
the ACM's (IT, computing) and IEEE (engineering) codes of
ethics and apply them during your academic and professional
careers. These are lifelong commitments to integrity and
professional conduct.
We will review these during the first class session, but you
are strongly encouraged to review these codes in detail:
From the ACM's preamble: Computing professionals' actions
change the world. To act responsibly, they should reflect upon
the wider impacts of their work, consistently supporting the
public good. The ACM Code of Ethics and Professional Conduct
("the Code") expresses the conscience of the profession.
From the IEEE's preamble: We, the members of the IEEE, in
recognition of the importance of our technologies in affecting
the quality of life throughout the world, and in accepting
a personal obligation to our profession, its members and the
communities we serve, do hereby commit ourselves to the highest
ethical and professional conduct and agree.
Mini-Project 8: Clustering Techniques
Unix tools for data science
Data science with R
Mini-Project 9: Statistical Inference
Classification evaluation measures
Sensitivity and specificity
Methods for model evaluation
An application of model evaluation
Emerging trends in data science
Course review
Mini-Project 10: R for Statistical Inference
Comprehensive final May 13 10:30-1:00 pm
Classroom engagement via
LLM and generative AI tools
.
Academic integrity policy
The School of Engineering statement on EdTech
"[P]rofessors and instructors at the
KU School of Engineering are aware that some students are
actively posting assignments, laboratory, and exam questions
and responses to EdTech services (e.g., Chegg) even during
exam time frames.
Attendance, late work, and makeup policies
Examples of excusable absences include:
Common policies
Ethical foundations for technical professionals
Professor Hossein Saiedian
Electrical Engineering & Computer Science
Eaton Hall 3012
University of Kansas
1520 W 15th St
Lawrence, KS 66045-7621
+1 785 864-8812
saiedian at eecs.ku.edu