2016-08-03 17 views
0

ここにNoob。私は "xmove1"、 "xmove2"、 "xmove3"の値をfilterコマンドに渡そうとしています。R - 変数の値を引数として渡すにはどうすればよいですか?

xmove1 <- "X3" 
xmove2 <- "X1" 
xmove3 <- "X5" 

xtemp <- filter(fullTable, xmove1 == 1, xmove2 == 2, xmove3 == 3) 

問題ではなくxmove1の値を読んで、それを文字列としてそれを読んでいるように見えるということである - 「xmove1」

私も "as.name"を使用しようとしましたが、結果は同じようです。

xtemp <- filter(fullTable, as.name(xmove1) == 1, as.name(xmove2) == 2, as.name(xmove3) == 3) 
+0

あなたが期待される出力の例を示すことができたことができますか?フルテーブルとは何ですか? – DataTx

+0

dplyrは非常に面白いです(風刺検出) –

+0

@DataTxこのフィルタは、362880個のオブジェクトを持つマトリックスのパターンの複数の並べ替えをスキャンすることが想定されています。現在のところ、出力は空のデータフレームであるため、そのデータフレームにデータを入力すると、正解になる可能性が高くなります。 – user2533660

答えて

1

あなたが動的に、列名を供給dplyr機能の標準評価の代替を使用する場合(詳細はvignette("nse")を参照してください)。

あなたは

filter_(fullTable, .dots=list(
    bquote(.(as.name(xmove1)) == 1), 
    bquote(.(as.name(xmove2)) == 2), 
    bquote(.(as.name(xmove3)) == 3))) 
関連する問題