我有一个带有三个插槽的S4对象'DATA' - 结构看起来像这样(对不起,我不知道如何创建一个例子,所以这是我正在使用的简化结构)
---坐标:@coo(例如'Name_A')是一个2x20矩阵,其中有6个带名字的矩阵
---姓名:@names Name_A Name_B Name_C Name_D Name_E Name_F,每个名字都有两个因素之一
---因素:@fac Factor_A Factor_B
如何在@fac = Factor_A中对@coo数据进行子集化(选择)?我已尝试使用带有getElement的[]表示法的数据帧类型选择组合的数量,但这显然是不正确的。感谢。
EDIT 可重复的例子 - 我知道这是一种可怕的做法....
library(Momocs)
您读入的输入数据文件如下所示(称为“test.chc”,其中这是另一个应用程序的输出)
[1] "sampleA 322 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[2] "sampleB 231 5 4 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[3] "sampleC 489 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[4] "sampleD 323 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[5] "sampleE 381 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[6] "sampleF 342 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[7] "sampleG 327 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[8] "sampleH 336 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[9] "sampleI 147 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
[10] "sampleJ 654 6 5 4 4 4 4 4 6 5 4 4 4 6 0 0 0 6 6 4 6 5 4 4 4 4 3 2 4 3 2 4 4 -1"
和
grps<- data.frame(Groups=(rep(letters[1:2],5)))
c.S4obj <-chc2Coo("test.chc")
c.S4obj@fac <-grps
str(c.S4obj)
那么,问题是,如何选择特定组(a或b)的数据并返回S4类对象?