Steckplätze sind mit S4-Objekten verbunden. Ein Slot kann als ein Teil, ein Element oder eine "Eigenschaft" eines Objekts betrachtet werden. Angenommen, Sie haben ein Auto-Objekt, dann können Sie die Slots "Preis", "Anzahl der Türen", "Motortyp", "Kilometerstand" haben.
Intern wird das eine Liste dargestellt. Ein Beispiel:
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
Hier sind price, numberDoors, typeEngine und mileage Slots der S4-Klasse "Car". Dies ist ein triviales Beispiel, in Wirklichkeit können Slots selbst wieder komplexe Objekte sein.
Der Zugang zu den Spielautomaten kann auf verschiedene Weise erfolgen:
> aCar@price
[1] 20000
> slot(aCar,"typeEngine")
[1] "V6"
oder durch die Konstruktion einer speziellen Methode (siehe zusätzliche Dokumentation).
Weitere Informationen zur S4-Programmierung finden Sie unter diese Frage . Wenn das Konzept für Sie noch vage klingt, könnte eine allgemeine Einführung in die objektorientierte Programmierung helfen.
PS: Beachten Sie den Unterschied zwischen Datenrahmen und Listen, wo Sie $
um auf benannte Variablen/Elemente zuzugreifen.
0 Stimmen
Das steht in der Hilfe zum
slot()
Funktion - sie soll nicht dokumentieren, was ein Steckplatz ist, sondern nur, wie man auf ihn zugreift.