Learning Objectives
Following this assignment students should be able to:
- understand the basic plot function of
ggplot2
- import ‘messy’ data with missing values and extra lines
- execute and visualize a regression analysis
Reading
Lecture Notes
Exercises
Bird Banding Multiple Vectors (50 pts)
The number of birds banded at a series of sampling sites has been counted by your field crew and entered into the following vector. Counts are entered in order and sites are numbered starting at one. There is also information on the number of trees at each site. Cut and paste the vector into your assignment and then answer the following questions by using code and printing the result to the screen.
number_of_birds <- c(28, 32, 1, 0, 10, 22, 30, NA, 145, 27, 36, 25, 9, 38, 21, 12, 122, 87, 36, 3, 0, 5, 55, 62, 98, 32, 900, 33, 14, 39, 56, 81, 29, 38, 1, 0, 143, 37, 98, 77, 92, 83, 34, 98, 40, 45, 51, 17, 22, 37, 48, NA, 91, 73, 54, 46, 102, 273, 600, 10, 11) number_of_trees <- c(10, 12, 2, 3, 10, 8, 19, 19, 14, 3, 4, 5, 8, 4, 8, 1, 12, 10, 3, 1, 2, 3, 5, 6, 8, 2, 90, 3, 4, 3, 6, 8, NA, 4, 0, 1, 14, 3, 10, NA, 9, 8, 4, 8, 4, 4, 5, 1, 2, 3, 5, 4, 10, 7, 5, 8, 10, 30, 26, 1, 6)
- How many sites are there?
- How many birds were counted at the 26th site?
- What is the largest number of birds counted?
- What is the average number of birds seen at a site?
- What is the total number of trees counted across all of the sites?
- What is the smallest number of trees counted?
- Produce a vector with the number of birds counted on sites with at least 10 trees.
- Produce a vector with the number of trees counted on sites with at least 10 trees.
- Combine the
number_of_birds
andnumber_of_trees
vectors into a dataframe that also includes a year column with the year 2012 in every row and site column containing the numbers 1 through 61.
Portal Data Review (50 pts)
If
surveys.csv
,species.csv
, andplots.csv
are not available in your workspace download them:Load them into R using
read.csv()
.- Create a data frame with only data for the
species_id
DO
, with the columnsyear
,month
,day
,species_id
, andweight
. - Create a data frame with only data for species IDs
PP
andPB
and for years starting in 1995, with the columnsyear
,species_id
, andhindfoot_length
, with no null values forhindfoot_length
. - Create a data frame with the average
hindfoot_length
for eachspecies_id
in eachyear
with no null values. - Create a data frame with the
year
,genus
,species
,weight
andplot_type
for all cases where thegenus
is"Dipodomys"
. - Make a scatter plot with
weight
on the x-axis andhindfoot_length
on the y-axis. Use alog10
scale on the x-axis. Color the points byspecies_id
. Include good axis labels. - Make a histogram of weights with a separate subplot for each
species_id
. Do not include species with no weights. Set thescales
argument to"free_y"
so that the y-axes can vary. Include good axis labels. - (Challenge) Make a plot with histograms of the weights of three species,
PP
,PB
, andDM
, colored byspecies_id
, with a different facet (i.e., subplot) for each of threeplot_type
’sControl
,Long-term Krat Exclosure
, andShort-term Krat Exclosure
. Include good axis labels and a title for the plot. Export the plot to apng
file.
- Create a data frame with only data for the