python - 根据距0的y距离进行分组的聚类算法

标签 python machine-learning scikit-learn

为了构建监督学习模型,我每天都对感兴趣的变量进行 st.dev 处理。我想找到每日 st.dev 的集群,即 st.dev 最小的组 1,较大的组 2,等等。

聚类的结果将为 CART 算法提供分类标签。怀疑有4个类。

我有一个二维矩阵,其中日期为“X”,每日 st.dev 为“y-true”。将日期列转换为数字后:

mat.X = pd.to_numeric(mat['X']) 

在 sklearn 库中使用 k-means,结果如下:

kmeans = KMeans(n_clusters=3)
kmeans = kmeans.fit(mat)]
labels = kmeans.predict(mat)
plt.scatter(mat[:,0],mat[:,1], c=kmeans.labels_, cmap='rainbow')  

enter image description here

结果没有对Y轴的st.dev数据进行聚类。这是一个好的方法论吗?是否应该切换列以对 st.dev 数据进行聚类?

最佳答案

您说您只想在 std-dev 上进行聚类,但您是在两个维度(std-dev 和日期)上进行聚类。

试试这个。

kmeans = KMeans(n_clusters=3)
kmeans = kmeans.fit(mat[:, 1])] 
labels = kmeans.predict(mat[:, 1])
plt.scatter(mat[:,0],mat[:,1], c=labels, cmap='rainbow')

关于python - 根据距0的y距离进行分组的聚类算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49263518/

相关文章:

python - 如何在数组上使用 multiprocessing.Pool?

python - 我想让我的 Discord Bot 发送图像/gif

python - 通过线程(或替代方式)在一个应用程序中使用多个 react 器(主循环)

python - 我如何使用 sklearn DictVectorizer 对列表进行矢量化

python - 来自数字模块的 ABC 类数字

python - 多参数Tensorflow分类程序

python - 一起使用过采样和 cross_validation 函数的方法是什么?

python - 梯度下降的代码在哪里?

machine-learning - 流水线生产 oneHotEncoding

python - 如何将多维列变成单值向量以用于sklearn pandas中的训练数据