Editing Statistics and Statistical Programming (Fall 2020)/pset1

From CommunityData

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 6: Line 6:


== Programming Challenges ==
== Programming Challenges ==
=== PC0. Get started===
=== PC0. Get started===
Open up RStudio, create a new file for this assignment (likely an R Markdown script), add relevant metadata (maybe your name, the date, and a title so that you/we know it is Problem Set 1 for this class?), and save it.
Open up RStudio, create a new file for this assignment (likely an R Markdown script), add relevant metadata (maybe your name, the date, and a title so that you/we know it is Problem Set 1 for this class?), and save it.
Line 11: Line 12:
=== PC1. Access and describe a dataset provided in an R library ===  
=== PC1. Access and describe a dataset provided in an R library ===  


# Load the <code>openintro</code> R package and the <code>county</code> dataset so that they are available to you. Let's get to know this data! You may already be familiar with it from Chapter 1 of the ''OpenIntro'' textbook and a codebook is available [https://www.openintro.org/data/index.php?data=county on the openintro website]. (''Note: there are a few other datasets in the <code>openintro</code> package with similar names. The one you want is <code>county</code> and is described on the site linked above.'')
# Load the <code>openintro</code> R package and the <code>counties</code> dataset so that they are available to you. Let's get to know this data!
# Find out the class of the <code>county</code> dataset object.  
# Find out the class of the <code>counties</code> dataset object.  
# Find out how many rows and how many columns are in the <code>county</code> dataset.  
# Find out how many rows and how many columns are in the <code>counties</code> dataset.  
# Find the names of all of the variables (columns) as well as the class of each of the variables.  
# Find the names of all of the variables (columns) as well as the class of each of them.  
# Summarize at least one continuous or discrete numeric variable in the dataset. Calculate the length, range (minimum and maximum), mean, and standard deviation.
# 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.  
# 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?).
# 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 dataset from the web ===
=== PC2. Work with a dataset from the web ===
# Run the following two commands in your R script. Be sure to replace <code><your.birthdate></code> with your birthday in ''ddmmyy'' format (e.g., September 21, 2020 would be <code>210920</code>) or at least something numeric. 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.:
# Run the following two commands in your R script. Be sure to replace <code><your.birthdate></code> with your birthday in ''ddmmyy'' format (e.g., September 21, 2020 would be <code>210920</code>) or at least something numeric:
::<code>set.seed(<your.birthdate>)</code></br>
::<code>set.seed(<your.birthdate>)</code></br>
::<code>sample(x= c(1:20), size=1))</code>
::<code>sample(x= c(1:20), size=1))</code>
# Navigate to the [https://communitydata.science/~ads/teaching/2020/stats/data data repository for the course] and find the RData file in the <code>week_03</code> subdirectory with your dataset number from PC2.1 (e.g., <code>group_<output>.Rdata</code> where <output> is replaced with the dataset number).  
If you've run the commands correctly (or maybe even not), R will return a single random integer value between 1 and 20. This integer is your dataset number for the purposes of PC2.
# Load the .Rdata file for your dataset number into R. It should contain one variable. Find that variable!
# Navigate to the [https://communitydata.science/~ads/teaching/2020/stats/data data repository for the course] and download the RData file in the <code>week_02</code> subdirectory with your dataset number from PC2.1 (e.g., <code>group_<output>.Rdata</code> where <output> is replaced with the dataset number).  
# Find and 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.
# 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.
# 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. <code>NA</code>) in your dataset. Now compute the mean and standard deviation again and note any changes.  
# 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. <code>NA</code>) in your dataset. Now compute the mean and standard deviation again. How does it change? ('''Hint:''' You may need to include the argument <code>na.rm=TRUE</code> to solve the problem.)
# 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.
# 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.


Line 36: Line 38:


===SQ2===
===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?
Consider the results of PC2.4 and PC2.5. 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===
===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?
Briefly discuss any differences you observe between the untransformed/uncleaned version of the variable you summarized in PC2.4 and PC2.5 and the transformed/cleaned version you summarized in PC2.7. Which summary should you prefer and why?
Please note that all contributions to CommunityData are considered to be released under the Attribution-Share Alike 3.0 Unported (see CommunityData:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel Editing help (opens in new window)