요인 분석 in r

9566·2021년 6월 7일
1

데이터 분석

목록 보기
2/10
post-thumbnail

Hits

요인분석


1. 역문항 처리

data1 <- data
data1 <- data1 %>% mutate(A1=6-A1,
			A2=6-A2
			A3=6-A3,
			A4=6-A4,
			A5=6-A5) %>% select_all

2. 요인회전 및 요인적재값

library(GPArotation)
data_EFA <- principal(data1, nfactors=5, rotate='varimax')
print(data_EFA$loadings, sort=T, cutoff=0.5)

3. 고유값

evalue <- data.frame(values=data_EFA$values)
head(evalue, 5)

4. 각 변수에 대한 공통성

communality <- data.frame(communality=data_EFA$communality)
head(communality, 5)

5. 표본의 적절성 (최소 0.6이상, 보통 0.8이상)

KMO(data1)

5-1. 현재 데이터로 요인분석을 해도 되는 지 적합성 확인

#(p-value > 0.05)
cortest.bartlett(data1)

5-2. 개별 신뢰도 분석

round(psych :: alpha(data1)$total$raw_alpha, 3)

5-3. X1, X2에 따라 Y에 대한 평균 비교

data2 <- data1 %>% mutate(Y=rowMeans(data1, na.rm=T)) %>% select_all

방법 1

# 일원배치분산분석(p-value > 0.05이면 통계적으로 유의한 평균의 차이가 없다 
# -> 등분산성을 만족->anova)
lawstat :: levene.test(data1$Y, data2$X1, location="mean", correction.method="zero.correction")
data2_aov<-aov(Y~X1, data=data2)
anova(data2_aov) #

방법 2

# 독립t검정(X2에 따라 Y에 대해 통계적으로 유의한 평균의 차이가 없다.)
var.test(Y~X2, data=data2) #p-value > 0.05이면 등분산성 만족
t.test(Y~X2, var.equal=T, data=data2) 

6. 요인에 대한 상관분석,상관도표


6-1. 요인 계산

data2 <- data2 %>% mutate(X1 = rowMeans(data2, na.rm=T)) %>% select_all

6-2. 상관분석

#(probability values <0.05이면 통계적으로 유의한 상관관계가 있다.)
data2_corr <- corr.test(data2, use="pairwise", method="pearson", alpha=0.5)
data2_corr

6-3. 상관관계 그래프

plot(data2, lower.panel=NULL)

profile
안녕하세요 안녕안녕하세요 안녕하세요오오오~~

0개의 댓글