Introduction to R Practical
11 September 2017
Open a new script file to work in, save it as a
.Rfile. (Just give it any file name you want, ending in .R)
duncan.csvfrom the course website (right-click the link then choose from the context menu to save). In RStudio, click on the Import Dataset button on the Environment tab in the top-right pane. Select From CSV… and select the
duncan.csvfile to import.
Copy the code from the Code Preview window, before clicking the Import button to import the data. A new tab will open with a preview of the data, but before looking at this, paste your copied code into your script file.
The data are from the 1971 census of Canada, with the following variables
average education in years
average income in dollars
percentage women in occupation
prestige score for occupation, from earlier survey
Canadian census occupation code
type of occupation: bc (blue collar), prof (professional, mangerial and technical) and wc (white collar)
summaryto get a quick summary of the variables (unless you chose a different name in the Import dialog, the data frame will be called
duncan). You will see that
typehas been read in as a character vector. Convert this to a factor using the code below
duncan$type <- factor(duncan$type)
summaryto get an updated summary of the data. You will see that
typehas missing values.
A subset of the data can be obtained with a command of the form
conditionis a logical vector, which is
TRUEfor the rows that should be kept and
is.na(x)will return a logical vector indicating whether each element of
TRUE) or not (
FALSE). Use such a logical vector to obtain the subset of the data for which
NA- from this you can see which occupations are unclassified.
min, assign the minimum proportion of women to a name. The command
x == awill return a logical vector indicating whether each element of
xis equal to
TRUE) or not (
subsetto obtain the rows of data where the proportion of women is equal to the minimum value. Repeat the process to obtain rows corresponding to the maximum.
Create a histogram and then a density plot of the prestige variable and compare the output. Use the code completion tools in RStudio to look at the second argument of
histand try modifying.
Create a boxplot of years of education by occupation type.
Create a scatterplot of prestige against income. Look at the help for
logand then create a plot of prestige against log income with base 10.