Добавление факторных результатов в исходный набор данных - PullRequest
3 голосов
/ 27 июля 2011

Я запускаю факторный анализ и сгенерировал 5 факторов. Теперь я хочу добавить эти факторы в исходный набор данных для запуска регрессии, сохраняя эти факторы с помощью независимых переменных. Кто-нибудь может подсказать, пожалуйста, как это сделать? Код, который я использовал для факторного анализа, выглядит следующим образом:

result.1<-subset(result,select=c(17:27))
fa.parallel(result.1)
View(result.1)
result.2<-factanal(result.1,factors=5,rotation="promax")
print(result.2)
print(result.2, digits = 2, cutoff = .2, sort = TRUE)
colnames(result.2$loadings)<-c("Fac_1","Fac_2","Fac_3","Fac_4","Fac_5")
print(loadings(result.2), digits = 2, cutoff = .2, sort = TRUE)

Я пытался использовать cbind, чтобы получить новые переменные столбцы факторов, но, к сожалению, это не сработало.

result.fac<-cbind(result,result.2)

С уважением, Ари

Ответы [ 2 ]

5 голосов
/ 27 июля 2011

Вы должны сохранить результаты, рассчитанные по фактаналам, и cbind те, что были в исходном наборе данных. E.g.:

data <- mtcars
f <- factanal(data, factors=5, rotation="promax", scores="regression")
data <- cbind(data, f$scores)
2 голосов
/ 06 июля 2012

Возможно, у вас есть некоторые пропущенные данные, что приводит к пропущенным строкам в матрице коэффициентов.Вам необходимо сопоставить имена строк, например:

scores <- result.2$scores
result.fac <- cbind(result[as.integer(rownames(scores)),],scores)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...