Statistics and Statistical Programming (Winter 2021)/Problem set 4
For this problem set, the programming challenges ask you to apply some of the concepts from OpenIntro Chapters 1 and 2 using the R and RStudio fundamentals that were introduced in the first three R tutorials. If you're feeling lost at any point, I recommend you review some of those materials and/or come ask for help!
The topics/skills covered here include: loading/importing datasets, performing some basic data management, summarizing data, conducting simple arithmetic operations, calculating summary/descriptive statistics for a few different kinds of variables, and creating univariate tables and visualizations.
The problem set is structured to model the workflow you would likely pursue whenever you encounter a new dataset outside of a classroom setting starting with basic inspection and description of variables of interest before moving on to more sophisticated analysis.
Programming Challenges
PC0. Get started
Open up RStudio, create a new project as you would for any assignment. Once you've got your project set up, create a file for this assignment (likely an R Markdown file, although an R script could work too), add relevant metadata (maybe your name, the date, and a title so that you/we know it is Problem Set 4 for this class?), and save it.
PC1. Access and describe a dataset provided in an R library
- Load the
openintro
R package and thecounty
dataset so that they are available to you. Let's get to know this data! You will already be familiar with it from Chapter 1 of the OpenIntro textbook and a codebook is available on the openintro website. (Note: there are a few other datasets in theopenintro
package with similar names. The one you want iscounty
and is described on the site linked above.) - Find out the class of the
county
dataset object. - Find out how many rows and how many columns are in the
county
dataset. - Find the names of all of the variables (columns) as well as the class of each of the variables.
- Summarize at least one continuous or discrete numeric variable in the dataset. Calculate the length, range (minimum and maximum), mean, and standard deviation.
- Plot a visual summary (maybe a boxplot or a histogram?) for the same numeric variable you used in PC1.4 above.
- Summarize at least one categorical variable in the dataset (e.g., if the variable takes values of TRUE/FALSE or NA, how many of each are value are there?).
PC2. Work with a downloaded dataset
- Run the following two commands in your R script. Be sure to replace
<your.birthdate>
with your birthday in yyyyddmm format (e.g., January 06, 2021 would be20200106
). If you run the commands correctly (or maybe even not), R will return a single random integer value between 1 and 20. This integer will be your dataset number for the purposes of PC2:
set.seed(<your.birthdate>)
sample(x= c(1:20), size=1))
- Navigate to the
datasets
data repository for the course] and find the RData file in theproblem_set_4
subdirectory with your dataset number from PC2.1 (e.g.,group_<output>.Rdata
where <output> is replaced with the dataset number). - Load the .Rdata file for your dataset number into R. It should contain one variable. Find that variable!
- Calculate summary statistics for your variable. Be sure to include the length, minimum, maximum, mean, and standard deviation.
- Create a visualization of your variable: at the very least, create a boxplot or a histogram.
- Some of you may have negative numbers. Whoops! This was due to a coding error. Write code to recode all negative numbers as missing (i.e.
NA
) in your dataset. Now compute the mean and standard deviation again and note any changes. [To Be Decided] - Log transform your dataset (i.e., take the natural logarithm for each value). If you have very small values (close to zero) it may be helpful to add 1 to each value before you take the natural logarithm (this avoids nonsense output in the results). Calculate the new mean and standard deviation of the transformed variable. Also create a new histogram or boxplot.
Statistical Questions
SQ1
Consider the results of PC1.4 and PC1.5. Do the mean and standard deviation seem likely to provide good representations of the central tendency (i.e., the average or expected value) and variability (i.e., the spread) of this variable? Why or why not? If not, what alternative measures could you use to characterize the central tendency and spread respectively?
SQ2
Consider the results of PC2.3 and PC2.4. Do the mean and standard deviation seem likely to provide good representations of the central tendency and spread of this variable? Why or why not? If not, what alternative measures could you use to characterize the central tendency and spread respectively?
SQ3
Briefly discuss any differences you observe between the untransformed/uncleaned version of the variable you summarized in PC2.3 and PC2.4 and the transformed/cleaned version you summarized in PC2.6. Which summary should you prefer and why?