R语言k-prototype聚类新能源汽车行业上市公司分析混合型数据集

科技   科技   2024-10-25 17:39   浙江  

全文链接:http://tecdat.cn/?p=32785


本文的研究目的是基于R语言的k-prototype算法,帮助客户对新能源汽车行业上市公司进行混合型数据集的聚类分析点击文末“阅读原文”获取完整代码数据

相关视频


通过对公司的财务数据、市场表现和发展战略等多个方面的变量进行聚类分析,我们可以将这些公司划分为不同的类别,并分析不同类别的特点和发展趋势。

这样的研究结果对于投资者、政策制定者和行业从业者都具有重要的参考价值,可以帮助他们更好地了解新能源汽车行业上市公司的发展状况和市场表现,从而做出更明智的决策。

分析目标

本项目旨在使用聚类算法对不同城市的新能源汽车行业上市公司进行分类与排序,以寻找客观真实的公司分层方法、支持业务运营与决策。

方法论

首先,由于数据集呈现分类变量与数值变量混合的特点,本次数据分析将采用K-prototype算法:

K-prototype算法:无需创建哑变量,将分别为分类变量计算汉明距离、为数值型变量计算欧几里得距离然后得出聚类结果。算法运行结束后将使用成本函数评价聚类效果。其次,数值型变量b、c、d的量纲明显不等,为避免量纲影响距离计算中不同变量的权重,需要对变量b、c、d进行处理。由于不知道是否符合正态分布,在这里使用归一化而非标准化。

查看数据

在进行聚类分析之前,首先需要查看数据集,了解数据的结构和特征。通过使用R语言中的相关函数和包,我们可以读取数据集,并使用函数如summary()和head()来查看数据的概要和前几行。

data=read.csv("新能源汽车 汇总.csv")

求出相关系数

在进行聚类分析之前,我们需要了解数据中各个变量之间的相关性。通过计算相关系数,我们可以得到一个关于变量之间关联程度的度量。R语言中的cor()函数可以用来计算相关系数矩阵,并通过可视化工具如热图来展示相关系数的模式。

对数据进行kp聚类(k=3)

在进行聚类分析之前,我们需要选择适当的聚类算法。对于混合型数据集,我们可以使用R语言中的k-prototype算法。该算法可以同时处理数值型和分类型变量,并根据变量之间的相似性将样本划分为不同的聚类。


x=data[,-c(1:2)]
d <- dist(x)
pclust=function(k){
  n=nrow(data)
cut <- tocut(hc, k=k)
 h <- hc$height[n - k]
clust(3)


点击标题查阅往期内容


SQL Server Analysis Services数据挖掘聚类分析职业、地区、餐饮消费水平数据


左右滑动查看更多


01

02

03

04



lust(4)

st(5)

ust(6)

将数据使用算法分成4个类别后可以看到 每个类别之间分布呈不同的簇,交集较少 ,因此可以认为得到的聚类结果较好。

删除相关性变量

在进行聚类分析之前,我们需要删除相关性较高的变量。高相关性的变量可能会导致冗余的信息,并且可能会对聚类结果产生负面影响。通过计算变量之间的相关系数,并选择相关系数较低的变量进行保留,我们可以减少变量的维度,从而提高聚类的效果。

cor(data[,-c(1:2)])

找到高相关性变量(相关系数大于0.8)

除了删除高相关性的变量外,我们还可以找出相关系数较高的变量对。这些变量对可能包含一些重要的信息,可以帮助我们更好地理解数据。通过计算变量之间的相关系数,并选择相关系数较高的变量对,我们可以得到一组关键的变量对,用于进一步的分析和解释。

highcor=which(abs(cor(data[,-c(1:2)]))>0.85,arr.ind = T)

clust(2)


点击标题查阅往期内容


数据分享|MATLAB、R基于Copula方法和k-means聚类的股票选择研究上证A股数据


左右滑动查看更多


01

02

03

04



lust(3)

lust(4)

ust(5)

lust(6)

将数据使用算法分成4个类别后可以看到 每个类别之间分布呈不同的簇,交集较少 ,因此可以认为得到的聚类结果较好。

数据标准化

在进行聚类分析之前,我们需要对数据进行标准化。标准化可以将不同变量之间的尺度差异进行统一,从而避免某些变量对聚类结果的影响过大。通过使用R语言中的scale()函数,我们可以对数据进行标准化处理。

x=scale(data2[,-c(1:2)])  
d <- dist(x)
hc <- rolust(d)

lust(2)

st(3)

ust(4)

ust(5)

ust(6)

将数据使用算法分成4个类别后可以看到 每个类别之间分布呈不同的簇,交集较少 ,因此可以认为得到的聚类结果较好。

通过以上步骤,我们可以使用R语言中的k-prototype算法对混合型数据集进行聚类分析,从而帮助我们更好地理解和解释新能源汽车行业上市公司的特征和模式。这对于业界和学术界的研究人员来说,具有重要的实际和理论意义。




本文中分析的数据、代码分享到会员群,扫描下面二维码即可加群!




点击文末“阅读原文”

获取全文完整代码数据资料


本文选自《R语言k-prototype聚类新能源汽车行业上市公司分析混合型数据集》。


点击标题查阅往期内容

SQL Server Analysis Services数据挖掘聚类分析职业、地区、餐饮消费水平数据
R语言上市公司经营绩效实证研究 ——因子分析、聚类分析、正态性检验、信度检验
R语言确定聚类的最佳簇数:3种聚类优化方法
PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化
【视频】复杂网络分析CNA简介与R语言对婚礼数据聚类社区检测和可视化|数据分享
数据分享|R语言分析上海空气质量指数数据:kmean聚类、层次聚类、时间序列分析:arima模型、指数平滑法
R语言文本挖掘:kmeans聚类分析上海玛雅水公园景区五一假期评论词云可视化
R语言k-Shape时间序列聚类方法对股票价格时间序列聚类
K-means和层次聚类分析癌细胞系微阵列数据和树状图可视化比较
KMEANS均值聚类和层次聚类:亚洲国家地区生活幸福质量异同可视化分析和选择最佳聚类数
PYTHON实现谱聚类算法和改变聚类簇数结果可视化比较
有限混合模型聚类FMM、广义线性回归模型GLM混合应用分析威士忌市场和研究专利申请数据
R语言多维数据层次聚类散点图矩阵、配对图、平行坐标图、树状图可视化城市宏观经济指标数据
r语言有限正态混合模型EM算法的分层聚类、分类和密度估计及可视化
Python Monte Carlo K-Means聚类实战研究
R语言k-Shape时间序列聚类方法对股票价格时间序列聚类
R语言对用电负荷时间序列数据进行K-medoids聚类建模和GAM回归
R语言谱聚类、K-MEANS聚类分析非线性环状数据比较
R语言实现k-means聚类优化的分层抽样(Stratified Sampling)分析各市镇的人口
R语言聚类有效性:确定最优聚类数分析IRIS鸢尾花数据和可视化
Python、R对小说进行文本挖掘和层次聚类可视化分析案例
R语言k-means聚类、层次聚类、主成分(PCA)降维及可视化分析鸢尾花iris数据集
R语言有限混合模型(FMM,finite mixture model)EM算法聚类分析间歇泉喷发时间
R语言用温度对城市层次聚类、kmean聚类、主成分分析和Voronoi图可视化
R语言k-Shape时间序列聚类方法对股票价格时间序列聚类
R语言中的SOM(自组织映射神经网络)对NBA球员聚类分析
R语言复杂网络分析:聚类(社区检测)和可视化
R语言中的划分聚类模型
基于模型的聚类和R语言中的高斯混合模型
r语言聚类分析:k-means和层次聚类
SAS用K-Means 聚类最优k值的选取和分析
用R语言进行网站评论文本挖掘聚类
基于LDA主题模型聚类的商品评论文本挖掘
R语言鸢尾花iris数据集的层次聚类分析
R语言对用电负荷时间序列数据进行K-medoids聚类建模和GAM回归
R语言聚类算法的应用实例



拓端数据部落
拓端(tecdat.cn)创立于2016年,提供专业的数据分析与挖掘服务,致力于充分挖掘数据价值。
 最新文章