Rの質問です。
以下は、最初のところでFAKEのデータを作っています。my_functionですけど、d_sというDATA FRAMEの中から、高校生のデータで、最初はGRADEが11の時に、データをサブセットするようになっています。その次のループでは、GRADEが12の時に、そうします。小さなデータを作るのが目的です。
問題は、これでせっかく書き出したものが、実際に、CALLされるようになっていません。eval()でできるとネットに書いてあったので試したのですがダメです。どうしたらいいでしょうか?成功すると、G11とG12という別々のデータフレームが作成されるはずなのです。
d_s <- data.frame(grade_ = c(10, 11, 12, 13, 12),
WVEIS = c(123, 134, 243, 244, 133),
annual_total_hours = c(1, 1, 5, 3, 5))
my_function <- function(var1)
{
eval(paste0('G',var1,'<-filter(d_service,grade_==',var1,')'))
}
my_function(11)
my_function(12)
今のところ、以下のように、ただ単に結果がプリントされるだけで、CALLされていません。
> my_function(13)
[1] "G13<-filter(d_service,grade_==13)"
> my_function(12)
[1] "G12<-filter(d_service,grade_==12)"
もしお時間がありましたら、教えていただけますか?
k u e k a w a @gmail.com までお願いします。