[R] how to write a loop to repetitive jobs

Ding, Yuan Chun ycd|ng @end|ng |rom coh@org
Tue Apr 17 00:11:46 CEST 2018


Hi Rui,

Thank you very much!!  It worked very well, I am looking into how  to use lapply and do.call.

Ding

-----Original Message-----
From: Rui Barradas [mailto:ruipbarradas using sapo.pt] 
Sent: Monday, April 16, 2018 2:16 PM
To: Ding, Yuan Chun; r-help using r-project.org
Subject: Re: [R] how to write a loop to repetitive jobs

Hello,

The following might do it. Without data it's untested.


wd <- function(i){
     paste0("C:/Awork/geneAssociation/removed8samples/neuhausen7", i,
"/seg.pr3.csv")
}

seg <- lapply(1:5, function(i) {
     DF <-read.csv(wd(i))
     DF$id <- paste0("sn7", i)
     DF
})

seg <- do.call(rbind, seg)
row.names(seg) <- NULL


Hope this helps,

Rui Barradas

On 4/16/2018 9:54 PM, Ding, Yuan Chun wrote:
> Hi All..,
> 
> I need to do the following repetitive jobs:
> 
> seg71 <- 
> read.csv("C:/Awork/geneAssociation/removed8samples/neuhausen71/seg.pr3.csv", head=T) seg71$id <-"sn71"
> 
> seg72 <- 
> read.csv("C:/Awork/geneAssociation/removed8samples/neuhausen72/seg.pr3.csv", head=T) seg72$id <-"sn72"
> 
> seg73 <- 
> read.csv("C:/Awork/geneAssociation/removed8samples/neuhausen73/seg.pr3.csv", head=T) seg73$id <-"sn73"
> 
> seg74 <- 
> read.csv("C:/Awork/geneAssociation/removed8samples/neuhausen74/seg.pr3.csv", head=T) seg74$id <-"sn74"
> 
> seg75 <- 
> read.csv("C:/Awork/geneAssociation/removed8samples/neuhausen75/seg.pr3.csv", head=T) seg75$id <-"sn75"
> 
> seg <- rbind (seg71, seg72, seg73, seg74, seg75)
> 
> I want to write a loop to do it;
> 
> For ( d in 71:75) {
>    Dir<-paste("C:/Awork/geneAssociation/removed8samples/neuhausen", i, sep="")
>    setwd(Dir)
> ..........
> then I do not know how to create objects seg71 to seg75;  in SAS, it would be  seg&d    ;
> 
> I like R, but not good at R.
> 
> Can you help me?
> 
> Thank you,
> 
> Ding
> 
> 
> ---------------------------------------------------------------------
> -SECURITY/CONFIDENTIALITY WARNING-
> This message (and any attachments) are intended solely 
> f...{{dropped:22}}
> 
> ______________________________________________
> R-help using 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