我是一个有R但又不熟悉PCA的新手。我的问题是,从一项调查中我得到一个包含九个变量观察值的清单,第一个是受访者的性别,接下来的五个(Q51_1_c,Q51_2_c,Q51_4_c,Q51_6_c,Q51_7_c)询问有关企业家问题,其他人询问未来期望值(Q56_1_c,Q56_2_c,Q56_3_c)。除了性别之外,所有这些变量都取值在1到5之间。我想用两个轴作散点图。第一个是“企业变量”,第二个是“未来期望变量”,然后在散点图中定义男性和女性的位置。我的数据是这样的:用PCA制作散点图以及如何读取结果
x <- "Q1b Q51_1_c Q51_2_c Q51_4_c Q51_6_c Q51_7_c Q56_1_c Q56_2_c Q56_3_c
3 Male 5 4 4 4 4 5 4 4
4 Female 4 3 4 4 3 3 4 3
5 Female 1 1 1 1 1 3 1 1
7 Female 2 1 1 1 1 5 1 4
8 Female 4 4 5 4 4 5 4 4
9 Female 3 3 4 4 3 3 4 4
13 Male 4 4 4 4 5 3 3 3
15 Female 3 4 4 4 4 1 1 5
16 Female 4 1 4 4 4 3 3 3
19 Female 3 2 3 3 3 3 3 3
20 Male 1 1 1 1 1 3 1 5
21 Female 3 1 1 2 1 3 3 3
26 Female 5 5 1 2 1 4 4 3
27 Female 2 1 1 1 1 1 1 1
29 Male 2 2 2 2 1 4 4 4
31 Female 3 1 1 1 1 5 2 3
34 Female 4 1 1 4 3 3 1 4
36 Female 5 1 1 4 4 5 1 2
37 Male 5 1 2 4 4 5 4 5
38 Female 3 1 1 1 1 1 1 1"
要运行PCA,这是我的代码:
x <- na.omit(x) #Jus to simplyfy
resul <- prcomp(x[,-1], scale = TRUE)
x$PC1 <- resul$x[,1] #Saving Scores PC1
x$PC2 <- resul$x[,2] #Saving Scores PC2
结果轴是这样的:
biplot(resul, scale = 0)
最后,做散点图:
x %>%
group_by(Q1b) %>%
summarise(mean_PC1 = mean(PC1),
mean_PC2 = mean(PC2)) %>%
ggplot(aes(x=mean_PC1, y=mean_PC2, colour=Q1b)) +
geom_point() +
theme_bw()
我不知道怎么样读取结果......我应该承认,女性一般在高于男性未来预期的尺寸获得更高的价值。男性在创业层面获得更高的价值?
在此先感谢!