Hi all;
I have 22 directories named chr1, chr2,....,chr22. Each directory has a
file named "Z-score.imputed". I would like to combine Z-score.imputed
files into one. I wrote the following loop but did not get any results.
Your helps are highly appreciated.
regards,
Greg
temp<-c()
for(i in 1:22) {
infile<-paste("chr",i,"/Z-score.imputed",sep="")
psT<-read.table(as.character(infile),header=T,as.is=T,sep="\t")
ps<-psT[psT$Var>0.6,]
ratio=nrow(ps)/nrow(psT)
print(ratio)
}
[[alternative HTML version deleted]]
Hello,
If what you want is to combine the files into one data.frame then there
are 2 things you should see:
1) You create a variable named 'temp' and don't ever use it.
2) You never combine the data.frames you read in.
Try instead the following.
temp <- data.frame()
for(i in 1:22) {
infile<-paste("chr",i,"/Z-score.imputed",sep="")
psT<-read.table(infile,header=T,as.is=T,sep="\t")
temp <- rbind(temp, psT)
}
str(temp) # to see what you have
Hope this helps,
Rui Barradas
Em 01-02-2017 17:25, greg holly escreveu:> Hi all;
>
> I have 22 directories named chr1, chr2,....,chr22. Each directory has a
> file named "Z-score.imputed". I would like to combine
Z-score.imputed
> files into one. I wrote the following loop but did not get any results.
> Your helps are highly appreciated.
>
> regards,
>
> Greg
>
> temp<-c()
>
> for(i in 1:22) {
>
infile<-paste("chr",i,"/Z-score.imputed",sep="")
>
psT<-read.table(as.character(infile),header=T,as.is=T,sep="\t")
> ps<-psT[psT$Var>0.6,]
> ratio=nrow(ps)/nrow(psT)
> print(ratio)
> }
>
> [[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.
>
Hi Rui; I do appreciate for this. Thanks so much. I will try ASAP. Regards, Greg On Wed, Feb 1, 2017 at 1:32 PM, Rui Barradas <ruipbarradas at sapo.pt> wrote:> Hello, > > If what you want is to combine the files into one data.frame then there > are 2 things you should see: > > 1) You create a variable named 'temp' and don't ever use it. > 2) You never combine the data.frames you read in. > > Try instead the following. > > temp <- data.frame() > for(i in 1:22) { > infile<-paste("chr",i,"/Z-score.imputed",sep="") > psT<-read.table(infile,header=T,as.is=T,sep="\t") > temp <- rbind(temp, psT) > } > > str(temp) # to see what you have > > Hope this helps, > > Rui Barradas > > > > > Em 01-02-2017 17:25, greg holly escreveu: > >> Hi all; >> >> I have 22 directories named chr1, chr2,....,chr22. Each directory has a >> file named "Z-score.imputed". I would like to combine Z-score.imputed >> files into one. I wrote the following loop but did not get any results. >> Your helps are highly appreciated. >> >> regards, >> >> Greg >> >> temp<-c() >> >> for(i in 1:22) { >> infile<-paste("chr",i,"/Z-score.imputed",sep="") >> psT<-read.table(as.character(infile),header=T,as.is=T,sep="\t") >> ps<-psT[psT$Var>0.6,] >> ratio=nrow(ps)/nrow(psT) >> print(ratio) >> } >> >> [[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/posti >> ng-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> >>[[alternative HTML version deleted]]
Hi Rui; Is there any way to insert the chr ids in numeric as 1,2......,22 in the final output. Here is output from str(temp). So I need also chr ids in a column. 1 rs58108140 10583 G A -0.070438 0.059903 2 rs189107123 10611 C G -0.044916 0.085853 Regards, Greg On Wed, Feb 1, 2017 at 1:32 PM, Rui Barradas <ruipbarradas at sapo.pt> wrote:> Hello, > > If what you want is to combine the files into one data.frame then there > are 2 things you should see: > > 1) You create a variable named 'temp' and don't ever use it. > 2) You never combine the data.frames you read in. > > Try instead the following. > > temp <- data.frame() > for(i in 1:22) { > infile<-paste("chr",i,"/Z-score.imputed",sep="") > psT<-read.table(infile,header=T,as.is=T,sep="\t") > temp <- rbind(temp, psT) > } > > str(temp) # to see what you have > > Hope this helps, > > Rui Barradas > > > > > Em 01-02-2017 17:25, greg holly escreveu: > >> Hi all; >> >> I have 22 directories named chr1, chr2,....,chr22. Each directory has a >> file named "Z-score.imputed". I would like to combine Z-score.imputed >> files into one. I wrote the following loop but did not get any results. >> Your helps are highly appreciated. >> >> regards, >> >> Greg >> >> temp<-c() >> >> for(i in 1:22) { >> infile<-paste("chr",i,"/Z-score.imputed",sep="") >> psT<-read.table(as.character(infile),header=T,as.is=T,sep="\t") >> ps<-psT[psT$Var>0.6,] >> ratio=nrow(ps)/nrow(psT) >> print(ratio) >> } >> >> [[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/posti >> ng-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> >>[[alternative HTML version deleted]]