を選択するための最速の方法これはR.でreturning the rows of a matrix that meet a condition上の質問への拡張であるが、私が行列を持って言う:R - 複数の条件を満たす行列の行
one two three four
[1,] 1 6 11 16
[2,] 2 7 12 17
[3,] 3 8 11 18
[4,] 4 9 11 19
[5,] 5 10 15 20
[6,] 1 6 15 20
[7,] 5 7 12 20
私はすべての行を返すようにしたいです、できるだけ速く、matrix$two == 7
およびmatrix$three == 12
。これは私がそれを行うには知っている方法です:
out <- mat[mat$two == 7,]
final_out <- out[out$three == 12, ]
明らかワンライナーでfinal_out
の内容を取得する方法、のようなものがあるはずです:の2行より速く、より簡潔であるfinal_out <- which(mat$two == 7 && mat$three == 12)
上記のコード。
この複数の条件行列クエリを返す最も速いRコードは何ですか?以下のようにarr.ind=TRUE
と
または 'mat [mat"、 "two"] == 7&mat [、 "three"] == 12、] – Roland
私は質問を完全に読まなかったし、OPは既に'which'を使用しました –
$サブセットは行列に適していますか?私はエラーが発生します。 – dayne