Est-ce que quelqu'un sait ce qu'est une fente dans R?
Je n'ai pas trouvé l'explication de sa signification. J'obtiens une définition récursive: "La fonction de slot renvoie ou définit des informations sur les slots individuels d'un objet"
De l'aide serait appréciée, Merci - Alley
Les slots sont liés aux objets S4. Un emplacement peut être vu comme une partie, un élément ou une "propriété" d'un objet. Supposons que vous avez un objet de voiture, alors vous pouvez avoir les emplacements "prix", "nombre de portes", "type de moteur", "kilométrage".
En interne, cela représente une liste. Un exemple :
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
Ici, le prix, le nombre de portes, le type de moteur et le kilométrage sont des emplacements de la classe S4 "Voiture". Ceci est un exemple trivial, dans la réalité, les machines à sous peuvent être à nouveau des objets complexes.
Vous pouvez accéder aux machines à sous de nombreuses façons:
> aCar@price
[1] 20000
> slot(aCar,"typeEngine")
[1] "V6"
ou par la construction d'une méthode spécifique (voir documentation supplémentaire).
Pour plus d'informations sur la programmation S4, voir cette question . Si le concept vous semble encore vague, une introduction générale à la programmation orientée objet pourrait être utile.
PS: Faites attention à la différence avec les cadres de données et les listes, où vous utilisez $
pour accéder aux variables/éléments nommés.
Tout comme names(variable)
liste tous les $
- noms accessibles d’une variable complexe, de même
slotNames(object)
liste tous les emplacements d'un objet.
Très pratique pour découvrir ce que votre objet fit contient pour le plaisir des yeux.
Outre les ressources indiquées par @Joris, ainsi que sa propre réponse, essayez de lire ?Classes
, qui inclut les éléments suivants sur les emplacements:
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.
....
Aucune idée pourquoi R doit tout redéfinir. La plupart des langages de programmation normaux les appellent "propriétés" ou "attributs".