作者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