原文链接:http://tecdat.cn/?p=26672
在这个我的项目中,我探讨了如何应用主成分剖析 (PCA) 进行简略的预测。
出于阐明目标,咱们将对一个数据集进行剖析,该数据集蕴含无关在 3 个不同价格组内进行的汽车购买信息以及影响其购买决定的一组特色。
首先,咱们将导入数据集并摸索其构造。
head(caref)
家喻户晓,PCA 应用欧几里得间隔来推导重量,因而输出变量须要是数字的。正如咱们所看到的,除了“组”变量之外,所有数据都是数字格局,因而咱们不用执行任何转换。
为了查看数字变量在 3 个价格组中的体现,我别离为每个数字变量生成箱线图。
ggplot(cr_e.m, aes(x = varle, y = vle, fill = Gup)) +
geom_boxplot()
通过观察上图,咱们能够理解到每个价格组的消费者对所思考的特色有不同的认识(即,给出不同的评分)。(“平安”特色的变动较小,在所有 3 个价格组中具备更高的排名 / 重要性)
当初为了更好地可视化这 3 个价格组集群如何在 3D 空间中呈现,我应用 3 个特色变量构建了一个 3D 图,显示给定评级之间的显着差别。
same3dpot <- with(carpef, scttro3d(Enirnmnt,Innoaon,Prtge
在上图中,咱们能够看到来自每个价格组的数据点(集群)之间的显著差别。
在持续利用 PCA 之前,当初我将查看输出变量之间是否存在任何相关性。
corrplot(oras)
能够看出,“翻新”、“平安”和“声望”特色之间仿佛有显著的相关性。
通常在构建模型时,咱们会删除一些(不必要的)相干预测变量而不包含模型,但鉴于咱们正在执行 PCA,咱们不会这样做,因为利用 PCA 的想法是生成新的主成分(它们不会互相关联)并用升高的维度替换以后的预测变量集。
pcmol <- prcomp(ca_eeued, scale. = TRUE, center = TRUE)
通过观察 PCA 的输入,咱们能够看到前两个 PC 解释了数据中 89% 的可变性。
通过包含 3 个 PC,该模型将解释 97% 的可变性,但因为 2 个 PC 能够解释大概 90% 的数据,因而我将只应用 2 个 PC。
此外,通过观察上面的碎石图和每个 PC 的重要性,咱们也能够了解,只用两个 PC 是能够的。
sumacamel = summary(adel)
plot(pc_el,type = "l")
因为咱们只保持前两个主成分,当初我查看每个预测变量对每个主成分的影响量。
上面我依据它们对每个 PC 的影响按降序排列了这些个性。
# 对于 PC 1
longScrsPC_1 <- pcael$roto\[,1\]
faccore\_PC\_1 <- abs(odingcre\_PC\_1)
fa\_scre\_PC\_1raked <- nmes(rt(fac\_cos1,decreasing = T))
pamod$roatn\[fa\_coC\_\_and,1\]
当初咱们最终在这两个 PC 上绘制原始数据,并查看咱们是否能够别离辨认每个价格组的数据点。
#PC_n2 <- qplot(x=PC1, y=PC2
咱们能够看到数据点是依据它们所在的每个价格进行聚类的!
应用上述特色,当初咱们将尝试依据他 / 她对所思考的特色给出的评级来预测一个人会购买哪种类型的汽车!
让咱们假如一个客户对每个特色给出了以下评级:
平安:9 环境:8 翻新:5 声望:4
当初让咱们尝试预测该客户将属于哪个价格组:
new_ser <- c(9,8,5,4)
new\_cus\_group <- predict(pcmdl, newdata = car\_pef\_ecew_c\[nrow(),\]
lt\_3 <- pot\_2 + ge\_point(aes(x=newcus\_
通过观察这个新察看值在 PC1 和 PC2 上的地位,咱们能够得出结论,新客户更有可能购买价格组 B 的汽车!如果我须要做出一些不同的预测,我集体会应用这种办法,因为它十分疾速且易于了解和解释。这种办法能够扩充规模以构建 PC 回归模型,尤其是当预测变量相干且须要正则化时。
最受欢迎的见解
1.R 语言多元 Logistic 逻辑回归 利用案例
2. 面板平滑转移回归 (PSTR) 剖析案例实现剖析案例实现 ”)
3.matlab 中的偏最小二乘回归(PLSR)和主成分回归(PCR)
4.R 语言泊松 Poisson 回归模型剖析案例
5.R 语言回归中的 Hosmer-Lemeshow 拟合优度测验
6.r 语言中对 LASSO 回归,Ridge 岭回归和 Elastic Net 模型实现
7. 在 R 语言中实现 Logistic 逻辑回归
8.python 用线性回归预测股票价格
9.R 语言如何在生存剖析与 Cox 回归中计算 IDI,NRI 指标