如何在一个向量中组合S4类对象的插槽

时间:2018-09-06 15:26:30

标签: r

我创建了一个带有两个插槽的S4类

setClass("A", 
     slots = c(
         x = "numeric",
         y = "numeric"
     )
)

并创建了一些对象

 l1<-new("A", x = 5, y = 8)
 l2<-new("A", x = 6, y = 7)
 l3<-new("A", x = 7, y = 6)
 l4<-new("A", x = 8, y = 5)

现在,我想将插槽x合并为一个向量。我喜欢

c<-c(l1@x,l2@x,l3@x,l4@x)

有没有更好的方法可以执行此操作,最好循环处理,因为没有对象无法修复。

1 个答案:

答案 0 :(得分:0)

如果您的4个对象包含在列表中,这将变得更加容易:

my.list <- list(l1, l2, l3, l4)

sapply(my.list, attr, 'x')

[1] 5 6 7 8