R -

2016-03-30 10 views
0

動作しないデータフレームのパラメータを持つ関数は、私は、インデックス番号がR -

change_name = function(x) { 
    valid_user[match(x, valid_user$id),'name'] 
} 

に名前を変更し、data.frameにこの機能を適用することができ、簡単なコードを作ります。

Data.frame nameは 'ga.screen'で、列名は 'dimension1'です。

ga.screen[, 'dimension1'] =sapply(ga.screen[, 'dimension1'], change_name) 

これはうまくいきます。

次に、さまざまな場合に適用できるこのコード関数を作りたいと思います。

readable_user_id = function(data, col) { 
    data[, col] = sapply(data[, col], change_name) 
} 
readable_user_id(ga.screen, 'dimension1') 

これは全く同じコードですが、後者のコードは機能しません。

これはどうしてですか?これは機能しないsapplyの問題ですか?またはこれがパラメータとして渡すことができない問題data.frame

答えて

3

あなたの機能は、変更さdata戻る

readable_user_id = function(data, col) { 
    data[, col] = sapply(data[, col], change_name) 
    data 
} 
+0

感謝を試してみてください!私は機能の復帰を逃した –

+0

おそらくタイトルは本当に今あなたの問題を反映していない?そしてその質問は閉じられるかもしれない? –