|>
ca_childcare select(study_year,
mc_infant,
mc_toddler,
mc_preschool,
region|>
) pivot_longer(cols = starts_with("mc_"),
names_to = "age",
values_to = "median_income"
|>
) mutate(age = fct_relevel(age,
"mc_infant",
"mc_toddler",
"mc_preschool")
)
Midterm Portfolio Learning Targets & Grade Expectations
1 Learning Targets
The following learning targets have been covered in Weeks 1-5 of this course. When locating code that “fits” into these learning targets I would like for you to:
- find 1-2 high quality examples (quality > quantity)
- find examples that hit on multiple learning targets at the same time
For example, the code below could be used to demonstrate proficiency with:
- WD-2 – in two places (
select()
andstarts_with()
)! - WD-7
- WD-4
- R-2 (tidy code)
- PE-4 (the
|>
is a “modern tool”)
Working with Data
- WD-1: I can import data from a variety of formats (e.g., csv, xlsx, txt)
- WD-2: I can select necessary columns from a dataset
- WD-3: I can filter rows from a dataset for a variety of data types (e.g., numeric, factor, date, character)
- WD-4: I can modify existing variables and create new variables in a dataset for a variety of data types (e.g., numeric, factor, date, character)
- WD-5: I can use mutating joins from the
tidyr
package to combine multiple datasets - WD-6: I can use filtering joins from the
dplyr
package to filter rows from a dataset - WD-7: I can pivot datasets from long to wide and visa versa
Reproducibility
- R-1: I can create professional looking, reproducible analyses using RStudio projects, Quarto documents, and the
here
package - R-2: I can write well documented1 and tidy code2
- You have not written functions yet, so you will not have any content for the “Example of function formatting” code block.
- R-3: I can write robust programs3 that are resistant to changes in inputs
- You have not written functions yet, so you will not have any content for the “Example of function stops” code block.
Data Visualization & Summarization
- DVS-1: I can create visualizations for a variety of variable types (e.g., numeric, character, date)
- DVS-2: I use plot modifications to make my visualizations clearer to the reader
- DVS-3: I show creativity in my visualizations
- DVS-4: I can calculate numerical summaries of variables
- DVS-5: I can calculate numerical summaries of variables across multiple groups
- DVS-6: I can create tables which make my summaries clear to the reader
Program Efficiency
- PE-1: I can write concise code which does not repeat itself.
- You have not yet learned about iteration, so you will not have any content for the “
map()
functions” code block.
- You have not yet learned about iteration, so you will not have any content for the “
- PE-3: I can use iteration to reduce repetition in my code.
- You have not yet learned about iteration, so you will not have any content for the code blocks related to the
map()
function.
- You have not yet learned about iteration, so you will not have any content for the code blocks related to the
- PE-4: I can use modern tools4 when carrying out my analysis.
Data Simulation & Statistical Models
- DSSM-2: I can conduct common statistical analyses in R
2 Grade Guidelines
The following are the expectations for each letter grade, as written (and voted on) by you. When making an argument for your grade, your rationale should be based on these criteria rather than vague statements about the work you have done thus far (e.g., “I’d worked really hard each week to accomplish the assignments.”).
Letter Grade | Description of Work and Participation |
---|---|
A (Superior Achievement) |
Learning Targets: Meets the criteria for a B and also demonstrates proficiency with DVS-3, DVS-7, and PE-3, demonstrating proficiency with nearly every learning target. |
B (Good Achievement) |
Learning Targets: Meets the criteria for a C and also demonstrates proficiency with objectives WD-5 through WD-7, DVS-2, PE-1, PE-2, PE-4, DSSM-1, and DSSM-2; effort is made toward DVS-3, DVS-7, and PE-3, but not at the level of proficiency |
C (Acceptable Achievement) |
Learning Targets: Demonstrates proficiency with objectives WD-1 through WD-4, R-1, R-2, DVS-4, DVS-5; slight effort is made toward WD-5 through WD-7 and PE-1 through PE-4, but not at the level of proficiency. |
D | Learning Targets: Demonstrates proficiency with objectives WD-1 through WD-4, R-1, R-2, DVS-4, DVS-5. No effort is made toward additional learning targets. |
F | Learning Targets: Does not satisfy the criteria for a D. |
Footnotes
“well documented” code has elements of the following:
code comments (e.g., # function to rescale columns between 0 and 1)
code chunk names (using the
#| lab:
option)sections in Quarto file which describe the process(es) being implemented
“tidy code” is code which adheres to the tidyverse style guidelines↩︎
The follow are some examples of code I would consider “robust”:
using column names rather than column positions
including function stops when writing functions
using processes that don’t depend on you remembering a particular sequence of steps (e.g.,
arrange()
thenslice()
versusslice_max()
)
The following are some examples of tools I would consider are “modern”:
functions which are not superseded
functions which are not deprecated
using the pipe operator to decrease the number of intermediate objects created