私はここ$
と例ですR.
に(記号で)オペレータ$
(ドル記号)と@
(?Syntax
を介して)「コンポーネント/スロット抽出」との差はあるのだろうか。
yo=data.frame(c(1:10), c(rnorm(10,0,1)))
yo$c.1.10.
プリント:
[1] 1 2 3 4 5 6 7 8 9 10
[email protected]
Error: trying to get slot "c.1.10." from an object (class "data.frame") that is not an S4 object
ここ@
との例を示します
setClass("track", representation(x="numeric", y="numeric"))
myTrack <- new("track", x = -4:4, y = exp(-4:4))
[email protected]
プリント:いずれの場合も
[1] -4 -3 -2 -1 0 1 2 3 4
myTrack$x
Error in myTrack$x : $ operator not defined for this S4 class
、なぜ1つの作業や他のではないのですか?
もう一つの例は、RでSoDA
パッケージから以下である、機能geoXY
に:
library(SoDA)
xy <- geoXY([email protected], [email protected], unit = 1000)
plot(xy[,1], xy[,2], asp = 1)
@は、特にS4オブジェクト用です。 – joran