Rのデータフレームは、グローバル変数で選択します
-
24-09-2019 - |
質問
私はエラーを取得せずにこれを実行するかどうかはわかりません。ここに私の問題を単純化した例です。
と言う私は、DF
このデータフレームを持っていますa b c d
1 2 3 4
2 3 4 5
3 4 5 6
それから私は、変数を持っている。
x <- min(c(1,2,3))
今、私が欲しい、以下のんでください。
y <- DF[a == x]
しかし、私はRが私のデータフレームに「X」の欄を探しているので、「X」私はエラーを取得するようないくつかの変数を参照してみてください。私は、「選択した未定義の列を」取得エラー
私はRでやろうとしています何を行うことができますどのように?
解決
私は、これはあなたが探しているものだと思います:
> x <- min(DF$a)
> DF[DF$a == x,]
a b c d
1 1 2 3 4
は(「X」変数を避けて)もっと簡単な方法は、このことだろう
> DF[which.min(DF$a),]
a b c d
1 1 2 3 4
またはこの:
> subset(DF, a==min(a))
a b c d
1 1 2 3 4
他のヒント
あなたは、特に行列、data.framesとインデックスに、R から紹介を読んでから利益を得ることができます。あなたのa
はdata.frameの列で、あなたのx
はスカラーです。あなたが持っているの比較が動作しません。
たぶん、あなたは意味
R> DF$a == min(c(1,2,3))
[1] TRUE FALSE FALSE
R> DF[,"a"] == min(c(1,2,3))
[1] TRUE FALSE FALSE
R>
その最初の行フィットではなく、他のもあなたに伝えます。。 which()
でこれをラップすると、あなたの代わりにインデックス与えます。
所属していません StackOverflow