我再次需要你的帮助:)
我编写了一个R脚本,它从给定的以制表符分隔的txt或xls文件中生成热图。目前,我在xls文件中手动删除了热图中不想要的所有列。现在我想把它自动化,但我不知道怎么做:
在所有xls文件中,感兴趣的列都以相同的开头,后面跟着一个单独的名称:
xls-文件1: L1_tpm_xxxx L2_tpm_xxxx L3_tpm_xxxx
xls-文件2: L1_tpm_xxxx L2_tpm_xxxx L3_tpm_xxxx L4_tpm_xxxx L5_tpm_xxxx
你知道如何选择这些列吗?
在期待中感谢你,菲利普
发布于 2010-06-02 23:32:31
您可以使用(如果您已在data.frame df中读取数据):
df <- df[,grep("^L[[:digit:]]+_tpm.*",colnames(df))]或者,您可以显式编写所需的列:
df <- df[,c("L1_tpm_xxxx","L2_tpm_xxxx","L3_tpm_xxxx")]等等。
下面的link非常有用;-)
发布于 2010-06-02 23:36:26
如果您认为列位置将跨excel工作表固定,这里最简单的解决方案是只使用列索引。例如,如果您使用read.table将一个以制表符分隔的文本文件作为data.frame导入,然后决定只保留前两列,则可以这样做:
data <- read.table("path_to_file.txt", header=T, sep="\t")
data <- data[,1:2]https://stackoverflow.com/questions/2958751
复制相似问题