在R

时间:2018-10-05 10:33:39

标签: r

我在选择数据时遇到问题。对于我的分析,我只想使用196个超过700个变量。

names(df)
proteins <- names(df[2:197]) 
df.log <- df [,proteins]

但我得到的回报是:[.data.frame(df, , proteins) : undefined columns selected

中的错误

我想知道变量名是否存在问题。因为当我选择其他变量时,它可以正常工作。例如,这里有一些无效的变量:

[1] "1-(O-alpha-D-glucopyranosyl)-29-keto-(1,3R,31R)-dotriacontanetriol"                                  
[2] "30-(-2-(O-2-hydroxy-ethane)-3-hydroxy-propane)-hopane"                                               
[3] "4-Amino-7-chloroquinoline" 

这些实际上在起作用:

[1] "t1_part"
[2] "t1-bmi"

...

有什么建议吗?

德国的问候

1 个答案:

答案 0 :(得分:0)

使用names(df)[2:197]代替names(df[2:197]),它适用于任何类型的列名。

检查以下代码,以获取一个虚拟数据帧df,该数据帧有700列,名称为 4-Amino-7-chloroquinoline ,后缀数字:

df <- data.frame(matrix(1:2100,nrow = 3,ncol = 700))
names(df) <- paste("4-Amino-7-chloroquinoline",1:700, sep="_")
proteins <- names(df)[2:197]
df.log <- df [,proteins]

希望这很有帮助