Ошибка в l1 [i]: объект типа 'S4' не является подмножеством - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь найти матрицу перекрытий между двумя кластерами.Я установил класс s4, у которого есть один слот (список содержит все кластеры).

 setClass("A", representation(a="list"))

 setMethod("initialize","A",
      function(.Object,data,k){
          fit<-kmeans(data,k)
          c<-list()
          for(i in 1:k)
              c[[i]]<-data[fit$cluster==i,]
          .Object@a<-c
          return(.Object)
      })

 l1<-new("A", da1, 4)
 l2<-new("A", da1, 4)

Я попытался найти общие элементы в обоих объектах класса "A", используя код

for(i in 1:4)
{
    for(j in 1:4)
    {
        lap[i,j]<-length(merge(l1[[i]],l2[[j]], all.x = FALSE, all.y = FALSE))
}

}

это дает мне сообщение об ошибке

 Error in l1[[i]] : this S4 class is not subsettable

Мой вопрос заключается в том, как я могу написать метод, который вычисляет это перекрытие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...