Posts Tagged ‘ R code ’

Enhanced tidy.source() (Preserve Some Comments)

March 31, 2009
By

After a few hours’ work, I modified the function tidy.source() in the animation package so that it can preserve complete comment lines. See the tidy.source() wiki page for example. tidy.source <- function(source = "clipboard", keep.comment = TRUE, keep.blank.line = FALSE, begin.comment, end.comment, ...) { # parse and deparse the code tidy.block = function(block.text)

Read more »

R matrices in C functions

December 13, 2008
By
R matrices in C functions

Using the .C() function in R, you can only pass vectors. Since R stores matrices columnwise as vectors anyhow, they can be passed to your C function as vectors (along with the number of rows in the matrix) and then accessed in familiar manner...

Read more »

Call C from R and R from C

November 17, 2008
By
Call C from R and R from C

Several years ago, while a research associate at the University of Chicago, I had the privilege of sitting in on a course taught by Peter Rossi: Bayesian Applications in Marketing and MicroEconometrics. This course -- one I recommend to anyone at U Ch...

Read more »

Error capture

May 6, 2008
By
Error capture

In a recent post to r-sig-ecology, Mike Colvin suggested the following to capture errors within a loop:for (i in 1:1000){fit<-try(lm(y~x,dataset))results<- ifelse(class(fit)=="try-error", NA, fit$coefficients)}

Read more »

Plotting contours

March 18, 2008
By
Plotting contours

Plenty of packages allow you to plot contours of a "z" value; however, I wanted to be able to plot a specific density contour of a sample from a bivariate distribution over a plot that was a function of the x and y parameters. The example only plots th...

Read more »

Drop unused factor levels

February 4, 2008
By
Drop unused factor levels

When creating a subset of a dataframe, I often exclude rows based on the level of a factor. However, the "levels" of the factor remain intact. This is the intended behavior of R, but it can cause problems in some cases. I finally discovered how to clea...

Read more »

Convert factors to numbers

November 29, 2007
By
Convert factors to numbers

If you have a vector of factors it is easy to get the factor level; however, I always forget how to extract the factor value. I ran into the answer here.> x<-factor(c(round(rnorm(10),2),"A","B",NA))> x 1.61 1.12 1.26 0.09 -0.13 0.16 -...

Read more »

Preparing plots for publication

November 15, 2007
By
Preparing plots for publication

The plotting capabilities of R are excellent; however, when I am preparing a figure for publication, I often need to combine multiple plots or add objects (e.g., arrows or text) to an existing plot. While this can be accomplished in R, my patience for ...

Read more »

Approximate sunrise and sunset times

October 17, 2007
By
Approximate sunrise and sunset times

This function is not perfect, but it does a reasonable job estimating sunrise and sunset times for my field site. If more accurate data are required, try here.suncalc<-function(d,Lat=48.1442,Long=-122.7551){ ## d is the day of year ## Lat is latit...

Read more »

Convert polar coordinates to Cartesian

October 14, 2007
By
Convert polar coordinates to Cartesian

When I want to calculate the coordinates of a location (e.g., a nest or burrow) based on distance and bearing from a grid point, this function helps me avoid writing down SOH-CAH-TOA every time. Just note that the bearing in this case is from the grid ...

Read more »