[解決済み] R:スロットとは何ですか?
2023-05-31 14:28:53
質問
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: データフレームとリストの違いに注意してください。
$
を使用して、名前付きの変数や要素にアクセスします。
関連
-
[解決済み] Pythonで静的なクラス変数は可能ですか?
-
[解決済み] Inversion of Controlとは?
-
[解決済み] インターフェースと抽象クラスの違いは何ですか?
-
[解決済み] 抽象メソッドと仮想メソッドの違いは何ですか?
-
[解決済み] オブジェクト名の前のシングルアンダーコアとダブルアンダーコアの意味は何ですか?
-
[解決済み] mixinとは何か、なぜ有用なのか?
-
[解決済み] Rの代入演算子"="と"<-"の違いは何ですか?
-
[解決済み】type()とisinstance()の違いは何ですか?)
-
[解決済み】Roxygen2を使ってS4クラススロットを適切にドキュメント化する方法は?
-
[解決済み] オブジェクト指向プログラミングにおける「インターフェイス」の定義とは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 関数型プログラミングとオブジェクト指向プログラミングの比較【終了しました
-
[解決済み] インターフェースとベースクラス
-
[解決済み] ミュータブルとイミュータブルのオブジェクト
-
[解決済み] メソッドチェイニング - なぜ良い習慣なのか、そうでないのか?
-
[解決済み] コンストラクタをprivateにするとどうなるのですか?
-
[解決済み] カプセル化と抽象化の違い
-
[解決済み] 多重継承の具体的な問題点は何ですか?
-
[解決済み] Laravelにおけるリレーションシップの管理、リポジトリパターンへの準拠
-
[解決済み] オブジェクトとインスタンスの違い
-
[解決済み] なぜプロトコルの関連型はSwiftの汎用型構文を使用しないのですか?