[R] Leave one out procedure - R

David L Carlson dcarlson at tamu.edu
Tue Jul 7 17:19:52 CEST 2015


As John suggests, more information and some sample data would help. I haven't used loocv, but here is a simple example of leave one out cross validation with simple linear regression. This does not eliminate the loop, but uses lapply() which makes specifying the loop simpler. The results of the 40 regressions are stored in a list called results and results.coef contains the intercept and slope for each regression in a matrix.

> set.seed(42)
> x <- rnorm(40, 10, 2)
> y <- x + rnorm(40, 0, 2)
> results <- lapply(1:40, function(i) lm(y[-i] ~ x[-i]))
> results.coef <- t(sapply(results, coef))
> summary(results.coef)
  (Intercept)          x[-i]       
 Min.   :-0.1477   Min.   :0.8408  
 1st Qu.: 0.2032   1st Qu.:0.9830  
 Median : 0.2613   Median :0.9883  
 Mean   : 0.2933   Mean   :0.9866  
 3rd Qu.: 0.3240   3rd Qu.:0.9959  
 Max.   : 1.9160   Max.   :1.0245  

-------------------------------------
David L Carlson
Department of Anthropology
Texas A&M University
College Station, TX 77840-4352

-----Original Message-----
From: R-help [mailto:r-help-bounces at r-project.org] On Behalf Of John Kane
Sent: Monday, July 6, 2015 6:53 PM
To: Vyshnnavi Parthasarathy; r-help at r-project.org
Subject: Re: [R] Leave one out procedure - R


Hi Vyshnnavi,

I'd suggest having a look at http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example and http://adv-r.had.co.nz/Reproducibility.html for some hints on how to ask questions on the R-help List.

At the moment I don't think you have supplied enough information, code, and data for people to easily answer your questions.

BTW if you are supplying sample data the best way is to use the dput() function. It provides an exact copy of the data set that you are working with.

Sorry not to be of any substantive help.



John Kane
Kingston ON Canada


> -----Original Message-----
> From: vyshnnaviammu at gmail.com
> Sent: Mon, 6 Jul 2015 08:56:52 -0700
> To: r-help at r-project.org
> Subject: [R] Leave one out procedure - R
> 
> Hello,
> I am still in the process of familiarizing myself with R, pardon me if
> this
> is basic. I want to run a leave one out procedure for a 40 member
> dataset.
> At the moment I am doing it via a simple for loop. I wanted to know if
> there is a superior way to do it. I read about the loocv command here -
> http://artax.karlin.mff.cuni.cz/r-help/library/DMwR/html/loocv.html.
> Since
> I need to save the output generated in each iteration, I am not very sure
> how exactly to implement the same using the loocv command. If you could
> give me an insight into how to do it/ suggest quicker ways to do leave
> one
> out cross validation, it would be really helpful!
> 
> Thanks,
> Vyshnnavi
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

____________________________________________________________
GET FREE 5GB EMAIL - Check out spam free email with many cool features!
Visit http://www.inbox.com/email to find out more!

______________________________________________
R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list