R:什么是老虎机?

有谁知道什么是在R插槽?

我没有find它的意义的解释。 我得到一个recursion的定义:“槽function返回或设置对象的单个插槽的信息”

帮助将不胜感激,谢谢 – 胡同

插槽与S4对象链接。 插槽可以被看作是对象的一部分,元素或“属性”。 假设你有一个汽车物体,那么你可以有插槽“价格”,“门的数量”,“发动机的types”,“里程”。

在内部,这是一个列表。 一个例子 :

 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 

在这里,价格,号码门,typeEngine和里程是S4级“车”的插槽。 这是一个微不足道的例子,在现实中,老虎机本身可能是复杂的对象。

插槽可以通过多种方式访问​​:

 > aCar@price [1] 20000 > slot(aCar,"typeEngine") [1] "V6" 

或通过构build特定的方法(请参阅额外的文档)。

有关S4编程的更多信息,请参阅此问题 。 如果这个概念对你来说听起来很模糊,那么面向对象编程的一般介绍可能会有所帮助。

PS:注意与数据框和列表的区别,您使用$来访问命名的variables/元素。

正如names(variable)列出了一个复杂variables的所有$访问的名字一样

slotNames(object)列出了对象的所有插槽。

非常方便发现你的适合对象包含什么好东西为您的观赏乐趣。

除了@Joris指出的资源外,还有他自己的答案,请尝试阅读?Classes ,其中包括以下插槽:

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