Как вы можете усреднить наблюдения группы в PCA с фактором анализа R? - PullRequest
0 голосов
/ 18 сентября 2018

Я пытаюсь построить график PCA с факторным анализом, чтобы показать, как группы наблюдений расположены по-разному вдоль результирующих измерений.

x = data.frame(v1=c(10, 20, 5, 26, 2, 30),
           v2=c(23, 31, 34, 63, 12, 7),
           v3=c(2, 6, 1, 0, 3, 5),
           group=c("A", "B", "A", "B", "A", "B"))
result <- PCA(x[1:3])

Это приводит к двум графикам: Наблюдения в PCA

В отличие от факторного анализа

Я пытаюсь сделать вместо того, чтобы наблюдения с 1 по 6 индивидуально располагались на первом графике, я хотел бы иметьгруппа A и группа B, состоящие из среднего положения их составляющих наблюдений (1, 3, 5 для A и 2, 4, 6 для B).

Большое спасибо, если у вас есть решение!

1 Ответ

0 голосов
/ 18 сентября 2018

Вы можете извлечь значения и сделать среднее по группам:

x = data.frame(v1=c(10, 20, 5, 26, 2, 30),
               v2=c(23, 31, 34, 63, 12, 7),
               v3=c(2, 6, 1, 0, 3, 5),
               group=c("A", "B", "A", "B", "A", "B"))
result <- PCA(x[1:3])
values<-as.data.frame(result$ind$coord)
values$group<-x$group
final<-aggregate(. ~ group, values, mean)

plot(final$Dim.1,final$Dim.2,xlim=c(-2.5,2.5),ylim=c(-2.5,2.5))
abline(h = 0, v = 0, col = "gray60")
text(final$Dim.1,final$Dim.2-0.09,labels = final$group)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...