Courses I am teaching or have previously taught:

  • STAT 110: Fundamentals of statistics
  • STAT 303: Introduction to engineering statistics
  • STAT 310: Intermediate statistics
  • STAT 370: Statistical consulting and communication
  • DSCI 210: Data science
  • DSCI 310: Data summarization and visualization
  • STAT 365: Experimental design and analysis
  • STAT 405: Biostatistics
  • STAT 450: Mathematical statistics I
  • STAT 460: Mathematical statistics II

Recent Posts

More Posts

This week’s MakeoverMonday is a good one. Without further ado, the original visualization by Philip Bump, appearing in his Washington Post article entitled Nearly a quarter of Americans have never experienced the U.S. in a time of peace: This graph triggered my pedagogical Pavlovian dog. Not just because it’s easy to malign the poor pie chart (of which this graph has 115!), but because I had a hunch that a redesign would reveal features of the data that are obscured above.


It’s been a while since I’ve posted! For a while I’ve been interested in joining the MakeoverMonday community, a group of data visualizers who come together each week to critique and redesign a visualization provided by Eva Murray and Andy Kriebel. I haven’t, due to busyness mostly, but this semester I finally took the dive and signed up! Call it a 2020 resolution. I hope that this will become a regular opportunity for me to keep developing my visualization critique and design skills.


Yesterday, I was preparing material for STAT 405 (biostatistics) I am teaching this spring, and was on the prowl for something that is an improvement upon the base R summary() function (it doesn’t even give standard deviations!). The ideal package would also improve upon the base R table() method, for which getting row and/or column percents is a huge pain. Base function xtabs() is great for getting arrays of contigency tables, but no percents.


This past semester I taught our STAT 370 (statistical consulting and communication) for the first time. This course gave student experience consulting for real clients from the university and community and focused on communicating with a client as well as report and presentation preparation best practices. Most of the required analyses were simple: paired t-tests, simple linear regression, etc. What struck me was the nontrivality of the data tidying process! While STAT 370 is taken mostly by our statistics majors, so many of the examples we encountered would be beautiful case studies for our introductory DSCI (data science) curriculum.


This July, my colleage Todd Iverson and I had the incredible opportunity to lead a pre-conference workshop at ICOTS 10 in Kyoto, Japan. Our workshop was titled Data visualization: best practices and principles using Tableau Public and Python. Our workshop began by covering Leland Wilkinson’s grammar of graphics. Most data visualization software (Tableau, Python, R, JMP) employ some version of this grammar, and with a firm understanding it becomes easy to transition between them.



Data Visualization: Principles and Applications in R, Tableau, and Python

Pre-conference workshop at SDSS 2019. Bellevue, WA. Co-author: Todd Iverson

A core data science curriculum for undergraduates

Pre-conference workshop at USCOTS 2019. Penn State, PA. Co-authors: Brant Deppa; Tisha Hooks; Todd Iverson; April Kerby; Chris Malone

Data visualization: Principles and Practice with Tableau Public and Python

Pre-conference workshop at ICOTS 10. Kyoto, Japan. Co-author: Todd Iverson

Web scraping and data visualization with Python and Tableau

Pre-conference workshop at USCOTS 2017. Penn State, PA. Co-author: Todd Iverson


  • sbergen at winona dot edu
  • (507) 457-2208
  • Department of Mathematics and Statistics, Winona State University, Winona MN, 55987