Python用KShape对时间序列进行聚类和肘方法确定最优聚类数k可视化 |
您所在的位置:网站首页 › len使用方法 › Python用KShape对时间序列进行聚类和肘方法确定最优聚类数k可视化 |
全文链接:http://tecdat.cn/?p=27078 使用基于互相关测量的距离标度(基于形状的距离:SBD) 根据 1 计算时间序列聚类的质心。(一种新的基于质心的聚类算法,可保留时间序列的形状) 划分成每个簇的方法和一般的kmeans一样,但是在计算距离尺度和重心的时候使用上面的1和2。 相关视频 import pandas as pd # 读取数据帧,将其转化为时间序列数组,并将其存储在一个列表中 tata = \[\] for i, df in enmee(dfs): # 检查每个时间序列数据的最大长度。 for ts in tsda: if len(s) > ln_a: lenmx = len(ts) # 给出最后一个数据,以调整时间序列数据的长度 for i, ts in enumerate(tsdata): dta\[i\] = ts + \[ts\[-1\]\] * n_dd # 转换为矢量 stack_list = \[\] for j in range(len(timeseries_dataset)): stack_list.append(data) # 转换为一维数组 trasfome\_daa = np.stack(ack\_ist, axis=0) return trafoed_data 数据集准备 # 文件列表flnes= soted(go.ob('mpldat/smeda*.csv')) # 从文件中加载数据帧并将其存储在一个列表中。for ienme in fiemes: df = pd.read\_csv(filnme, indx\_cl=one,hadr=0) flt.append(df) 聚类结果的可视化 # 为了计算交叉关系,需要对它们进行归一化处理。# TimeSeriesScalerMeanVariance将是对数据进行规范化的类。sac\_da = TimeeiesalerMVarne(mu=0.0, std=1.0).fit\_trnform(tranfome_data)# KShape类的实例化。ks = KShpe(\_clusrs=2, n\_nit=10, vrboe=True, rano_stte=sed) yprd = ks.ft\_reitsak\_ata)# 聚类和可视化plt.tight_layout() plt.show()
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |