Abhishek Pratap
2011-May-05 21:15 UTC
[R] quick question : interpolating file name in pipe command
Hi Guys I am trying to read a bunch of files in the loop but pipe function which I use to cut few columns is somehow unable to interpolate the file variable. eg:> file="check.txt" > data <- read.table(pipe("cut -f 2,3 file"), sep="\t", col.names=c('pos','cov') )cut: file: No such file or directory how can I pass variable file to pipe so that it can be interpolated. Thanks! -Abhi
Abhishek Pratap
2011-May-05 21:45 UTC
[R] quick question : interpolating file name in pipe command
You can ignore my question I was able to figure out the way. I guess when I touch R after couple of weeks I am rusty. -Abhi On Thu, May 5, 2011 at 2:15 PM, Abhishek Pratap <abhishek.vit at gmail.com> wrote:> Hi Guys > > I am trying to read a bunch of files in the loop but pipe function > which I use to cut few columns is somehow unable to interpolate the > file variable. > > > eg: > >> file="check.txt" >> data ?<- read.table(pipe("cut -f 2,3 file"), sep="\t", col.names=c('pos','cov') ) > cut: file: No such file or directory > > how can I pass variable file to pipe so that it can be interpolated. > > Thanks! > -Abhi >
David Winsemius
2011-May-05 21:50 UTC
[R] quick question : interpolating file name in pipe command
On May 5, 2011, at 5:15 PM, Abhishek Pratap wrote:> Hi Guys > > I am trying to read a bunch of files in the loop but pipe function > which I use to cut few columns is somehow unable to interpolate the > file variable. > > > eg: > >> file="check.txt" >> data <- read.table(pipe("cut -f 2,3 file"), sep="\t", >> col.names=c('pos','cov') )I do not see where you allowed the substitution of the character vector file into the pipe argument. Perhaps: data <- read.table(pipe(paste("cut -f 2,3", file)), sep="\t", col.names=c('pos','cov') ) (Bad practice to name variables "file".) I didn't use tabs but rather spaces: check.txt was a single line file ttt tt rr ttt > data <- read.table(pipe(paste("cut -f 2,3", file)), col.names=c('pos','cov') ) > data pos cov 1 ttt tt 2 rr ttt> cut: file: No such file or directory > > how can I pass variable file to pipe so that it can be interpolated. > > Thanks! > -Abhi > > ______________________________________________ > R-help at r-project.org mailing list > 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.David Winsemius, MD West Hartford, CT