【发布时间】:2017-12-08 10:56:26
【问题描述】:
我有一个很大的data.frame 有一些列,但我的第 9 列是由分号分隔的数据组成的:
gtf$V9
1 gene_id CUFF.1; transcript_id CUFF.1.1; FPKM 7.0762407256; frac 1.000000; conf_lo 4.347062; conf_hi 9.805420; cov 25.616962;
2 gene_id CUFF.1; transcript_id CUFF.1.1; exon_number 1; FPKM 7.0762407256; frac 1.000000; conf_lo 4.347062; conf_hi 9.805420; cov 25.616962;
3 gene_id CUFF.1; transcript_id CUFF.1.1; exon_number 2; FPKM 7.0762407256; frac 1.000000; conf_lo 4.347062; conf_hi 9.805420; cov 25.616962;
4 gene_id CUFF.1; transcript_id CUFF.1.1; exon_number 3; FPKM 7.0762407256; frac 1.000000; conf_lo 4.347062; conf_hi 9.805420; cov 25.616962;
所以我想将此列分成其他列,然后将merge 与data.frame 的另一部分(第 9 列之前的其他列)一起剪切。
我尝试了一些没有结果的代码:
head(gtf$V9, sep = ";",stringsAsFactors = FALSE)
或
new_df <- matrix(gtf$V9, ncol=7, byrow=TRUE) # sep = ";"
与as.data.frame、data.frame 或as.matrix 相同
我也尝试过 write.csv 并使用包含 sep=";" 的方式导入它,但 data.frame 太大了,我的电脑运行滞后..
有什么建议吗?
【问题讨论】:
-
最终
read.table(text=gt$V9, sep=';')...然后cbind() -
您正在读取序列变体数据。看看 refGenome 包cran.r-project.org/web/packages/refGenome/vignettes/…
-
你必须提供更多关于你希望你的理想输出如何的信息。当您将
V9拆分为;时,您是否获得了列的值?V9中是否也包含列名?假设后者,我会猜测并发布答案。
标签: r dataframe split multiple-columns