[R] Output for pasting multiple vectors
Rui Barradas
ru|pb@rr@d@@ @end|ng |rom @@po@pt
Tue Jun 25 22:54:25 CEST 2019
Hello,
The following works.
First, get the colnames you have posted in a format that R can process.
in your code you would skip this.
cnames <- scan(what = character(), text = '
"sample.NA.NA.NANA"
"TCGA.27.1832.01.NA.NA.NANA"
"TCGA.27.1831.01.NA.NA.NANA"
"TCGA.28.5216.01.NA.NA.NANA"
"TCGA.16.0846.01.NA.NA.NANA"
"TCGA.28.5218.01.NA.NA.NANA"
"TCGA.06.0178.01.NA.NA.NANA"
"TCGA.06.0238.01.NA.NA.NANA"
"TCGA.06.0125.01.NA.NA.NANA"
"TCGA.06.0219.01.NA.NA.NANA"
')
cnames
Now your code corrected. I do not understand the output you are
expecting. Can you give an example of the expected output of, say, the
first 2 or 3 strings?
lapply(cnames, function(i){
c1 <- strsplit(i, split = '\\.')[[1]]
c1[4] <- paste(strsplit(c1[4], split = "",fixed = T)[[1]][1:2],
collapse = "")
paste(c1, collapse = ".")
})
Hope this helps,
Rui Barradas
Às 20:24 de 25/06/19, Spencer Brackett escreveu:
> Mr. Barradas,
>
> Oh haha my mistake. The following is the output you requested....
>
> [1] "sample.NA.NA.NANA"
> [2] "TCGA.27.1832.01.NA.NA.NANA"
> [3] "TCGA.27.1831.01.NA.NA.NANA"
> [4] "TCGA.28.5216.01.NA.NA.NANA"
> [5] "TCGA.16.0846.01.NA.NA.NANA"
> [6] "TCGA.28.5218.01.NA.NA.NANA"
> [7] "TCGA.06.0178.01.NA.NA.NANA"
> [8] "TCGA.06.0238.01.NA.NA.NANA"
> [9] "TCGA.06.0125.01.NA.NA.NANA"
> [10] "TCGA.06.0219.01.NA.NA.NANA"
>
> Best,
>
> Spencer
>
> On Tue, Jun 25, 2019 at 2:50 PM Rui Barradas <ruipbarradas using sapo.pt
> <mailto:ruipbarradas using sapo.pt>> wrote:
>
> Hello,
>
> No, you have not understood, post the colnames, not the row.names.
>
> Run
>
> colnames(meth)[1:10]
>
> and post the output of that code line.
>
> Hope this helps,
>
> Rui Barradas
>
> Às 19:31 de 25/06/19, Spencer Brackett escreveu:
> > The requested reprex....
> >
> > Rendering reprex...
> > Error in parse(text = x, keep.source = TRUE) :
> > <text>:26:2: unexpected ')'
> > 25:
> > 26: 2)
> > ^
> >
> > And the subset of the data....
> >
> > row.names = c(NA, 6L), class = "data.frame")
> >
> > Best,
> >
> > Spencer
> >
> >
> > On Tue, Jun 25, 2019 at 2:25 PM Rui Barradas
> <ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>
> > <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>>> wrote:
> >
> > Hello,
> >
> > No I wasn't expecting a very large file.
> > Try to make a reproducible example. If the problem seems to
> be with the
> > sapply/strsplit post a subset of the data like just some of the
> > colnames:
> >
> > colnames(meth)[1:10]
> >
> >
> > This would allow us to run the code you are having trouble with.
> >
> >
> > Hope this helps,
> >
> > Rui Barradas
> >
> > Às 17:36 de 25/06/19, Spencer Brackett escreveu:
> > > The result of dput(head(meth)) is a very large data
> table/listing of
> > > data by category of what I presume to be the data from the two
> > TCGA .txt
> > > files I referenced previously. Is this the output you were
> expecting?
> > >
> > > On Tue, Jun 25, 2019 at 12:19 PM Rui Barradas
> > <ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>
> <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>>
> > > <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>
> <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>>>> wrote:
> > >
> > > Hello,
> > >
> > > 1) That error comes from not closing }) after the paste()
> > instruction.
> > > The complete statement would be
> > >
> > >
> > > colnames(meth) = sapply(colnames(meth), function(i){
> > > c1 = strsplit(i, split ='\\', fixed = T)[[1]]
> > > c1[4] = paste(strsplit(c1[4],split = "",fixed =
> > > T)[[1]][1:2],collapse
> > > = "")
> > > paste(c1,collapse = ".")
> > > })
> > >
> > >
> > > 2) Can you post the output of the following?
> > >
> > > dput(head(meth))
> > >
> > >
> > > Hope this helps,
> > >
> > > Rui Barradas
> > >
> > > Às 16:58 de 25/06/19, Spencer Brackett escreveu:
> > > > The following is what I have implemented thus far...
> > > >
> > > > The file object for the two files listed in lines
> 1-2 was
> > set in my
> > > > working directory, and are under the folder
> "Vakul's GBM
> > Code"...
> > > hence
> > > > the source of the odd 'prefix' for .txt files shown
> > > >
> > > > >library(data.table)>.anno =
> as.data.frame(fread(file =
> > > "~Vakul's GBM
> > > > Code/mapper.txt", sep ="\t", header = T))
> > > > >meth = read.table(file = "~Vakul's GBM Code/GBM.txt",
> > sep ="\t",
> > > > header = T, row.names = 1)
> > > > >meth = as.matrix(meth)
> > > >
> > > > ## the loop just formats the methylation column
> names to
> > match
> > > format ##
> > > > colnames(meth) = sapply(colnames(meth), function(i){
> > > > c1 = strsplit(i,split ='\\', fixed = T)[[1]]
> > > > c1[4] = paste(strsplit(c1[4],split = "",fixed =
> > > T)[[1]][1:2],collapse
> > > > = "")
> > > > paste(c1,collapse = ".")
> > > >
> > > > Rendering reprex...
> > > > Error in parse(text = x, keep.source = TRUE) :
> > > > <text>:28:0: unexpected end of input
> > > >
> > > > Best,
> > > >
> > > > Spencer
> > > >
> > > >
> > > >
> > > > On Tue, Jun 25, 2019 at 11:45 AM Spencer Brackett
> > > > <spbrackett20 using saintjosephhs.com
> <mailto:spbrackett20 using saintjosephhs.com>
> > <mailto:spbrackett20 using saintjosephhs.com
> <mailto:spbrackett20 using saintjosephhs.com>>
> > > <mailto:spbrackett20 using saintjosephhs.com
> <mailto:spbrackett20 using saintjosephhs.com>
> > <mailto:spbrackett20 using saintjosephhs.com
> <mailto:spbrackett20 using saintjosephhs.com>>>
> > > <mailto:spbrackett20 using saintjosephhs.com
> <mailto:spbrackett20 using saintjosephhs.com>
> > <mailto:spbrackett20 using saintjosephhs.com
> <mailto:spbrackett20 using saintjosephhs.com>>
> > > <mailto:spbrackett20 using saintjosephhs.com
> <mailto:spbrackett20 using saintjosephhs.com>
> > <mailto:spbrackett20 using saintjosephhs.com
> <mailto:spbrackett20 using saintjosephhs.com>>>>>
> > > > wrote:
> > > >
> > > > Mr. Barradas,
> > > >
> > > > I got the same "output" as before, which is the +
> > indicating that
> > > > the expression is incomplete (according to some
> R users
> > > response in
> > > > this chain).
> > > >
> > > > Should the argument perhaps be c1 = strsplit(i,
> split
> > = '\\',
> > > fixed
> > > > = T)[[1]] .... thereby eliminating the "." ?
> > > > The reprex and error message as the result of
> this is
> > the same as
> > > > the previous one I sent.
> > > >
> > > > I will send a more detailed description of what
> code I
> > have
> > > done so
> > > > far for context.
> > > >
> > > > Best,
> > > >
> > > > Spencer
> > > >
> > > > On Tue, Jun 25, 2019 at 11:30 AM Rui Barradas
> > > <ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>
> <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>>
> > <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>
> <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>>>
> > > > <mailto:ruipbarradas using sapo.pt
> <mailto:ruipbarradas using sapo.pt>
> > <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>>
> <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>
> > <mailto:ruipbarradas using sapo.pt <mailto:ruipbarradas using sapo.pt>>>>>
> > > wrote:
> > > >
> > > > Hello,
> > > >
> > > > Maybe with
> > > >
> > > > c1 = strsplit(i, split = '\\.', fixed = T)[[1]]
> > > >
> > > > instead of split = '.'
> > > >
> > > > The dot is a metacharacter that matches any
> > character so
> > > it has
> > > > to be
> > > > escaped.
> > > >
> > > > Hope this helps,
> > > >
> > > > Rui Barradas
> > > >
> > > > Às 16:11 de 25/06/19, Spencer Brackett
> escreveu:
> > > > > c1 = strsplit(i,split ='.', fixed = T)[[1]]
> > > >
> > >
> >
>
More information about the R-help
mailing list