SDS 192 course standards
Standard Does Not Meet Standard Meets Standard Mastery
Chooses visual cues and colors for purely aesthetic reasons without attention to data representation. Chooses visual cues and colors that faithfully reflect the representation of the underlying data. Data graphics are highly customized, and/or make use of a wide range of available geoms and color palettes.
Produces data graphics that are is unclear, confusing, devoid of context, or impossible to understand without reading the text. Produces data graphics with readable axis labels, units, and legends (where appropriate). Produces striking data graphics that tell a story, reveals the data, grab interest, and have low ink density per data density. Ideally, the viewer sees themselves in the graph.
Authors reports in R Markdown that do not compile, do not include necessary content, or include unnecessary content. Authors reports in R Markdown that compile, include all necessary content, and exclude unnecessary content (e.g., package loading messages). Authors reports in R Markdown that employ formatting for strucural effect, and include a variety of web elements (e.g., links, images, data graphics, code chunks).
Can only use GitHub through web interface. Clones repositories, commits, pushes, and pulls. Files MWE/reprexs as Issues; resolves simple merge conflicts.
Performs some operations manually in spreadsheet application. Uses single table verbs to perform basic data wrangling and compute appropriate data summaries. Optimizes wrangling code for readability and performance.
Relies on spreadsheet application, sorting, or manual reordering to merge tables. Combines multiple data frames (tables) using *_join() functions and makes explicity mappings between variables. Uses left, inner, and right joins intentionally to include or exclude potentially missing data.
Uses spreadsheet application or pivot tables to reshape data. Transforms data frames from wide to long format and vice versa using pivot_longer() and pivot_wider() Transforms data frames using list-columns and nest() and unnest().
Copies-and-pastes similar code three or more times. Applies function to list or vector when three or more applications are desired. Iterates function over rows or multiple variables simultaneously.
Copies-and-pastes similar code with small changes Writes user-defined function when procedures are applied more than twice. Writes user-defined functions that accept multiple arguments, and are robust to unexpected changes in the global environment.
Does not recognize ethical implications of data science work. Identifies potentially problematic ethical considerations in data science work. Examines ethical implications of data science work critically using published resources for guidance.
Uses drag-and-drop editor to build query in blocks. Retrieves data from SQL database server by writing SELECT query from scratch. Re-writes queries to maximize efficiency and/or creates efficient workarounds for slow queries.
Uses geospatial GUI (e.g., ArcGIS) Reads shapefiles as sf objects and produces static spatial plots using ggplot2. Performs geospatial computations to derive new spatial objects or calculate new metrics.
Creates interactive leaflet maps with only one layer and only default aesthetics. Creates interactive leaflet maps with multiple geospatial layers. Creates interactive leaflet maps with customized color palettes and/or user-selectable layers.