oop - trampa - ley de casinos y tragamonedas peru
R: ¿qué son las tragamonedas? (3)
¿Alguien sabe qué ranura hay en R?
No encontré la explicación de su significado. Obtengo una definición recursiva: "La función de ranura devuelve o establece información sobre las ranuras individuales de un objeto"
Ayuda sería apreciada, Gracias - Callejón
Además de los recursos que @Joris le indica, más su propia respuesta, intente leer ?Classes
, que incluye lo siguiente en las máquinas tragamonedas:
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.
....
Del mismo modo que los names(variable)
enumeran todos los nombres $
-accesibles de una variable compleja, así también
slotNames(object)
enumera todas las ranuras de un objeto.
Muy útil para descubrir los objetos que contiene su objeto de ajuste para su placer visual.
Las máquinas tragamonedas están vinculadas a objetos S4. Una ranura se puede ver como una parte, elemento o "propiedad" de un objeto. Digamos que tiene un objeto de automóvil, entonces puede tener las ranuras "precio", "número de puertas", "tipo de motor", "kilometraje".
Internamente, eso se representa una lista. Un ejemplo :
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
Aquí, precio, numberDoors, typeEngine y kilometraje son ranuras de la clase S4 "Coche". Este es un ejemplo trivial, en realidad las máquinas tragamonedas en sí mismas pueden ser nuevamente objetos complejos.
Se puede acceder a las máquinas tragamonedas de varias maneras:
> aCar@price
[1] 20000
> slot(aCar,"typeEngine")
[1] "V6"
o mediante la construcción de un método específico (ver documentación adicional).
Para más información sobre programación S4, vea esta pregunta . Si el concepto aún le suena vago, una introducción general en Programación Orientada a Objetos podría ayudar.
PD: tenga en cuenta la diferencia con los marcos de datos y las listas, donde usa $
para acceder a variables / elementos con nombre.