作者jobs (晴时多云)
看板R_Language
标题[问题] dplyr - 如何用字串来操作filter
时间Mon Feb 10 22:42:31 2014
[问题类型]:
程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来)
[软体熟悉度]:
入门(写过其他程式,只是对语法不熟悉)
[问题叙述]:
我想要一个比较一般化的方法来使用 dplyr 里的各种 functions
这些 function 通常需要将 data frame 的 column name 传入
我希望可以用字串来指定我想要的 column
[程式范例]:
library(dplyr)
library(hflights)
hflights_df <- tbl_df(hflights)
filter(hflights_df, Month == 1, DayofMonth == 1)
#No problem
m="Month"
d="DayofMonth"
filter(hflights_df, get(m) == 1, get(d) == 1)
#Error in get("Month") : object 'Month' not found
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 128.196.239.56
1F:推 celestialgod:我只会用eval, parse, paste写.... 02/11 01:28
2F:推 celestialgod:如果没有其他大大有更好的方法,小弟再写我的想法 02/11 01:28
3F:推 Wush978:filter(hflights_df, hflights_df[[m]] == 1) 02/12 21:15
4F:→ Wush978:也许这是你要的 02/12 21:16
5F:→ jobs:感谢楼上!! 那正是我想要的 02/13 02:42