誰かがRのスロットが何であるか知っていますか?
その意味の説明が見つかりませんでした。再帰的定義を取得します:「スロット関数は、オブジェクトの個々のスロットに関する情報を返すか、設定します」
助けていただければ幸いです、ありがとう-路地
スロットは S4 オブジェクトにリンクされています。スロットは、オブジェクトの一部、要素、または「プロパティ」と見なすことができます。車のオブジェクトがあるとすると、「価格」、「ドアの数」、「エンジンの種類」、「走行距離」というスロットを持つことができます。
内部的には、それはリストで表されます。例 :
setClass("Car",representation=representation(
price = "numeric",
numberDoors="numeric",
typeEngine="character",
mileage="numeric"
))
aCar <- new("Car",price=20000,numberDoors=4,typeEngine="V6",mileage=143)
> aCar
An object of class "Car"
Slot "price":
[1] 20000
Slot "numberDoors":
[1] 4
Slot "typeEngine":
[1] "V6"
Slot "mileage":
[1] 143
ここで、price、numberDoors、typeEngine、および mileage は、S4 クラス「Car」のスロットです。これは些細な例ですが、実際にはスロット自体も複雑なオブジェクトになる可能性があります。
スロットにはさまざまな方法でアクセスできます。
> aCar@price
[1] 20000
> slot(aCar,"typeEngine")
[1] "V6"
または特定のメソッドの構築を通じて (追加のドキュメントを参照)。
S4 プログラミングの詳細については、この質問を参照してください。概念がまだ漠然としているように聞こえる場合は、オブジェクト指向プログラミングの一般的な紹介が役立ちます。
$
PS:名前付き変数/要素へのアクセスに使用するデータフレームとリストの違いに注意してください。
複雑な変数names(variable)
のアクセス可能な名前をすべてリストアップするのと同じように、$
slotNames(object)
オブジェクトのすべてのスロットを一覧表示します。
fit-object に含まれるグッズを見つけるのに非常に便利です。
@Joris が指摘するリソースに加えて、彼自身の回答に加えて、?Classes
スロットに関する次の内容を含む を読んでみてください。
Slots:
The data contained in an object from an S4 class is defined
by the _slots_ in the class definition.
Each slot in an object is a component of the object; like
components (that is, elements) of a list, these may be
extracted and set, using the function ‘slot()’ or more often
the operator ‘"@"’. However, they differ from list
components in important ways. First, slots can only be
referred to by name, not by position, and there is no partial
matching of names as with list elements.
....