R: que sont les machines à sous?

Est-ce que quelqu’un sait ce qu’est un slot dans R?

Je n’ai pas trouvé l’explication de sa signification. Je reçois une définition récursive: “La fonction Slot renvoie ou définit des informations sur les slots individuels d’un object”

L’aide serait appréciée, merci – Alley

Les emplacements sont liés aux objects S4. Un slot peut être vu comme une partie, un élément ou une “propriété” d’un object. Disons que vous avez un object de voiture, alors vous pouvez avoir les créneaux “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, prix, nombreDoors, typeEngine et kilométrage sont des créneaux horaires de la classe S4 “Car”. Ceci est un exemple sortingvial, en réalité, les slots eux-mêmes peuvent être à nouveau des objects complexes.

Les machines à sous sont accessibles de plusieurs manières:

 > 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 object pourrait vous aider.

PS: surveillez la différence avec les dataframes et les listes, où vous utilisez $ pour accéder à des variables / éléments nommés.

Tout comme les names(variable) répertorie tous les noms $ -accessibles d’une variable complexe, de même

slotNames(object) répertorie tous les emplacements d’un object.

Très pratique pour découvrir les goodies que votre object-forme contient pour votre plus grand plaisir.

En plus des ressources que @Joris vous indique et de sa propre réponse, essayez de lire ?Classes , qui comprend les éléments suivants:

  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. ....