Exercise 5: Basic programming in R (optional)
Read Chapter 7 to help
you complete the questions in this exercise.
- Create a function to calculate the area of a circle. Test the
function by finding the area of a circle with a diameter of 3.4 cm. Can
you use it on a vector of data?
- Write a function to convert farenheit to centegrade (oC = (oF - 32)
x 5/9). Get your function to print out your result in the following
format: “Farenheit : value of oF is equivalent to value
oC centigrade.”
- Create a vector of normally distributed data, of length 100, mean 35
and standard deviation of 15. Write a function to calculate the mean,
median, and range of the vector, print these values out with appropriate
labels. Also get the function to plot a histogram (as a proportion) of
the values and add a density curve.
- Write a function to calculate the median value of a vector of
numbers (yes I know there’s a
median()
function already but
this is fun!). Be careful with vectors of an even sample size, as you
will have to take the average of the two central numbers (hint: use
modulo %%2 to determine whether the vector is an odd or an even size).
Test your function on vectors with both odd and even sample sizes.
- You are a population ecologist for the day and wish to investigate
the properties of the Ricker model. The
Ricker model is defined as:
\[ N_{t+1} = N_{t} exp\left[r\left(1-
\frac{N_{t}}{K} \right) \right] \]
- (cont) Where Nt is the population size at time
t, r is the population growth rate and K is
the carrying capacity. Write a function to simulate this model so you
can conveniently determine the effect of changing r and the
initial population size N0. K is often set to 100 by default,
but you want the option of being able to change this with your function.
So, you will need a function with the following arguments; nzero which
sets the initial population size, r which will determine the
population growth rate, time which sets how long the simulation will run
for and K which we will initially set to 100 by default.
End of Exercise 5