基于kaggle欧洲国家太阳能发电数据集进行聚类分析

简介

该数据集由两部分组成,一个是各国数据,一个是各国各太阳能站点数据。确定簇数时,两个数据集都使用!簇数确定后,仅适用国家数据集进行聚类,并对每个集群中的国家代表进行统计分析。

1、聚类

1.1 数据获取

path = "dataset"
df_solar_co = pd.read_csv(path + "\solar_generation_by_country.csv")
df_solar_st = pd.read_csv(path + "\solar_generation_by_station.csv")
df_solar_st = df_solar_st.drop(columns=['time_step'])#删去时间戳列

1.2 簇数确定

   以近1年的数据计算轮廓系数和肘图,从而确定簇数k。

from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score

def plot_elbow_scores(df_, cluster_nb):#轮廓系数+肘方法
    km_inertias, km_scores = [], []

    for k in range(2, cluster_nb):
        km = KMeans(n_clusters=k).fit(df_)
        km_inertias.append(km.inertia_)#所有簇平方和
        km_scores.append(silhouette_score(df_, km.labels_))#轮廓系数

    sns.lineplot(range(2, cluster_nb), km_inertias)
    plt.title('elbow graph / inertia depending on k')
    plt.show()

    sns.lineplot(range(2, cluster_nb), km_scores)
    plt.title('scores depending on k')
    plt.show()
#太阳能站点
df_solar_transposed = df_solar_st[-24*365:].T
plot_elbow_scores(df_solar_transposed, 20)
#对太阳能发电国家
df_solar_transposed = df_solar_co[-24 * 365:].T
plot_elbow_scores(df_solar_transposed, 20)

对于站点
   如果第一个图上没有任何真正的肘部,那么最好的 k 似乎是 7。
   肘图
在这里插入图片描述
   轮廓系数
在这里插入图片描述
对于国家
   如果第一个图上没有任何真正的肘部,那么最好的 k 似乎是 6。
   肘图
在这里插入图片描述
   轮廓系数
在这里插入图片描述
最优簇数k确定:站点和国家的结果相差不大,表示簇数为6可信度较好,因此取k=6。

1.3 聚类结果

km = KMeans(n_clusters=6).fit(X)
X['label'] = km.labels_
print("Cluster nb / Nb of countries in the cluster", X.label.value_counts())
print("Countries grouped by cluster")
for k in range(6):
    print('cluster nb : {k}', " ".join(list(X[X.label == k].index)))

聚类结果如图所示:
在这里插入图片描述

2、 分析每个集群

每个集群都用一个国家来代表
24小时内每个国家太阳能发电站的效率
在这里插入图片描述
特定某天各国太阳能发电站的效率
在这里插入图片描述
非空值的站点效率分布(即白天)
在这里插入图片描述
法国1985到2015的效率分布
在这里插入图片描述
各国月效率
在这里插入图片描述
各国周效率
在这里插入图片描述
各国年效率
在这里插入图片描述
只考虑上午5点到下午10点
各国第三4分位数
在这里插入图片描述小提琴图了解密度
在这里插入图片描述
箱线图
在这里插入图片描述
相关图
在这里插入图片描述
热力图
在这里插入图片描述

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Hadoop的Kaggle电商数据集分析系统是一个使用大数据处理技术的电商数据分析平台。通过利用Hadoop生态系统中的各种工具和技术,这个系统能够高效地处理和分析庞大的电商数据集,并提供有价值的洞察力和决策支持。 首先,这个系统使用Hadoop集群进行数据存储和处理。数据集可以通过Hadoop分布式文件系统(HDFS)进行存储,利用分布式计算技术提高数据处理速度和可扩展性。 其次,系统使用MapReduce框架进行数据处理和分析。这个框架可以将任务分解成多个小型任务,并在集群中并行计算,从而加快数据处理速度。通过编写适当的Map和Reduce函数,可以对数据集进行各种复杂的计算和分析操作,如统计、聚类和预测等。 此外,系统还可以使用Hadoop的批处理工具(如Hive和Pig)进行数据查询和分析。这些工具提供了类似于SQL的查询语言和数据处理语言,使用户能够以更简单和灵活的方式对数据集进行操作。 最后,系统通过可视化工具(如Tableau和R)将数据分析结果可视化呈现,以便用户更直观地理解和利用分析结果。用户可以通过交互式仪表板和图表来探索数据集,并从中提取有价值的信息和洞察。 综上所述,基于Hadoop的Kaggle电商数据集分析系统能够高效处理大规模的电商数据,并提供灵活、可扩展的分析能力和数据可视化功能,为用户提供有价值的商业洞察和决策支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值