2014-06-29 32 views
-2

对不起,这可能已经被完成了,但是我发现所有的答案都已经在地图上变成了极端的偏方。我可以使用[[]](我已经从stackoverflow了解到,我是而不是应该为我的脚本使用子集()和类似的,因为它们旨在用于交互式使用),对于单个列,但我无法弄清楚如何跨越一列。这两个工作,当然:如何在数据框中插入多个列(不进行过滤)R

outcomeA <- outcome[['Hospital.Name']] 
outcomeB <- outcome[['TX]] 

但我已经尝试了十几个置换获得这些列的两个,就像这样:

outcomeC <- outcome[[c('Hospital.Name', 'TX')]] (gives "subscript out of bound") 
outcomeC <- outcome[c('Hospital.Name', 'TX')]  (gives "undefined columns selected") 

等,但都失败。有人能让我摆脱苦难,帮助我选择多个专栏吗?

谢谢 - 埃德

+0

你确定'TX'是一列吗?这个例子工作'dd <-data.frame(Hospital.Name =“a”,TX =“b”); dd [c(“Hospital.Name”,“TX”)]' – MrFlick

+2

应该是带逗号前导的单个方括号,即:'outcome [,c(“Hospital.Name”,“TX”)]' – jogall

+0

对,它不是一个专栏。对不起,我必须用无数不同的变化来包裹车轴,其中大部分会导致无法理解的错误信息。再次感谢,并再次抱歉。 – EdB

回答

1

你试试这个用逗号和单支架

outcomeC <- outcome[,c('Hospital.Name', 'TX')] 

你也只能得到存在于你的数据列名。检查他们:

names(outcome) 
+1

但是它也应该和'dd [c(“Hospital.Name”,“TX”)]'一起工作,如果是这样的话。我猜其中的一个并不是真正的专栏名称。 – MrFlick

+1

OP使用双括号。那就是问题所在 – rawr

相关问题