8

R[[ の関数の意味を誰か教えてもらえますか?lapply(x, '[[', VarNames[[type]])

4

3 に答える 3

5

抽出機能です。@mnel が指摘しているように、ヘルプ ファイルは?Extract多くの情報を提供します。

以下は、etcのような通常の見た目の基本関数と同じように[[、 とを関数として使用する例です。[sum table

> test <- list(a=1:10,b=letters[1:10])
> test
$a
 [1]  1  2  3  4  5  6  7  8  9 10

$b
 [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j"


> "[["(test,1)
 [1]  1  2  3  4  5  6  7  8  9 10


> "[["(test,2)
 [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j"


> "["(test,1)
$a
 [1]  1  2  3  4  5  6  7  8  9 10


> "["(test,2)
$b
 [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j"
于 2012-10-31T06:50:15.513 に答える
3

単一の要素を抽出するのは関数 [[ です。見る ?"[["

それはあなたが仕事で見るのと同じ機能です

VarNames[[type]]   
于 2012-10-31T06:44:28.950 に答える
2

この式により、'x' の連続する各値が[[最初の引数として与えられ、forVarNames[[type]]が評価されて 2 番目の引数として使用されます。結果は、次の形式の一連の関数呼び出しになります。

`[[`( x[[1]], VarNames[[type]] )

これを関数形式として提示したことに注意してください。最初の 1 つのケースについて書かれたこれを確認する通常の方法は次のようになります。

x[[1]][[ VarNames[[type]]) ]]

その 2 番目の形式は、R インタープリターによって最初の形式に解析されます。

于 2012-10-31T06:54:13.463 に答える