Unalignable boolean Series provided as indexer (index of the boolean Series and of the indexed objec
Posted yuanninesuns
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unalignable boolean Series provided as indexer (index of the boolean Series and of the indexed objec相关的知识,希望对你有一定的参考价值。
最近在用python做数据挖掘,在聚类的时候遇到了一个非常恶心的问题。话不多说,直接上代码:
1 from sklearn.cluster import KMeans 2 from sklearn.decomposition import PCA 3 import matplotlib.pyplot as plt 4 #kmeans算法 5 df1=df23 6 kmeans = KMeans(n_clusters=5, random_state=10).fit(df1) 7 #贴上每个样本对应的簇类别标签 8 df1[\'level\']=kmeans.labels_ 9 #df1.to_csv(\'new_df.csv\') 10 11 df2=df1.groupby(\'level\',as_index=False)[\'level\'].agg({\'num\': np.size}) 12 print(df2.head()) 13 14 #将用于聚类的数据的特征的维度降至2维 15 pca = PCA(n_components=2) 16 new_pca = pd.DataFrame(pca.fit_transform(df1)) 17 print(new_pca.head()) 18 19 #可视化 20 d = new_pca[df1[\'level\'] == 0] 21 plt.plot(d[0], d[1], \'gv\') 22 d = new_pca[df1[\'level\'] == 1] 23 plt.plot(d[0], d[1], \'ko\') 24 d = new_pca[df1[\'level\'] == 2] 25 plt.plot(d[0], d[1], \'b*\') 26 d = new_pca[df1[\'level\'] == 3] 27 plt.plot(d[0], d[1], \'y+\') 28 d = new_pca[df1[\'level\'] == 4] 29 plt.plot(d[0], d[1], \'c.\') 30 31 plt.title(\'the result of polymerization\') 32 plt.show()
错误如下:
网上找了好久都没找到解决方法,明明之前成功过的。于是我查看了df23数据,发现它是这样的:
与之前成功的dataframe的唯一差别就是索引!!!重要的事情说三遍!!!索引!!!索引!!!于是乎,我去找怎么重置索引的方法,见代码:
1 df24=df23[["forks_count","has_issues","has_wiki","open_issues_count","stargazers_count","watchers_count","created_pushed_time","created_updated_time"]] 2 df24=df24.reset_index() 3 df24=df24[["forks_count","has_issues","has_wiki","open_issues_count","stargazers_count","watchers_count","created_pushed_time","created_updated_time"]]
然后聚类就成功了。。。心累。。。。
以上是关于Unalignable boolean Series provided as indexer (index of the boolean Series and of the indexed objec的主要内容,如果未能解决你的问题,请参考以下文章
javascript Genera un array que contiene la serie de fibonacci hastaelnúmeroindado
php WhereHas ou has com or dentro de uma serie de Wheres(Exemplo dosElementosGráficos)