婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > python利用K-Means算法實現對數據的聚類案例詳解

python利用K-Means算法實現對數據的聚類案例詳解

熱門標簽:悟空智電銷機器人6 幫人做地圖標注收費算詐騙嗎 遼寧400電話辦理多少錢 蘇州電銷機器人十大排行榜 外呼不封號系統 溫州旅游地圖標注 荊州云電銷機器人供應商 江蘇房產電銷機器人廠家 電信營業廳400電話申請

目的是為了檢測出采集數據中的異常值。所以很明確,這種情況下的簇為2:正常數據和異常數據兩大類

1、安裝相應的庫

import matplotlib.pyplot as plt  # 用于可視化
from sklearn.cluster import KMeans  # 用于聚類
import pandas as pd # 用于讀取文件

2、實現聚類

2.1 讀取數據并可視化

# 讀取本地數據文件
df = pd.read_excel("../data/output3.xls", header=0)

本次實驗選擇溫度CO2作為二維數據,其中溫度含有異常數據。

plt.scatter(df["光照"], df["CO2"], linewidths=1, alpha=0.8)
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用來正常顯示中文標簽v
plt.xlabel("光照")
plt.ylabel("CO2")
plt.grid(color="#95a5a6", linestyle="--", linewidth=1, alpha=0.4)
plt.show()

2.2 K-means聚類

設置規定要聚的類別個數為2

data = df[["光照","CO2"]] # 從原始數據中選擇該兩項
estimator = KMeans(n_clusters=2)  # 構造聚類器
estimator.fit(data)  # 將數據帶入聚類模型

獲取聚類中心的值和聚類標簽

label_pred = estimator.labels_  # 獲取聚類標簽
centers_ = estimator.cluster_centers_ # 獲取聚類中心

將聚類后的 label0 和 label1 的數據進行輸出

x0 = data[label_pred == 0]
x1 = data[label_pred == 1]

plt.scatter(x0["光照"], x0["CO2"],c="red", linewidths=1, alpha=0.8,marker='o', label='label0')
plt.scatter(x1["光照"], x1["CO2"],c="green", linewidths=1, alpha=0.8,marker='+', label='label1')
plt.grid(c="#95a5a6", linestyle="--", linewidth=1, alpha=0.4)
plt.legend()
plt.show()

附上全部代碼

import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
import pandas as pd


df = pd.read_excel("../data/output3.xls", header=0)
plt.scatter(df["光照"], df["CO2"], linewidths=1, alpha=0.8)
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用來正常顯示中文標簽v
plt.xlabel("光照")
plt.ylabel("CO2")
plt.grid(color="#95a5a6", linestyle="--", linewidth=1, alpha=0.4)
plt.show()

data = df[["光照","CO2"]]
estimator = KMeans(n_clusters=2)  # 構造聚類器
estimator.fit(data)  # 聚類
label_pred = estimator.labels_  # 獲取聚類標簽
centers_ = estimator.cluster_centers_  # 獲取聚類結果
# print("聚類標簽",label_pred)
# print("聚類結果",centers_)
# predict = estimator.predict([[787.75862069, 1505]]) # 測試新數據聚類結果
# print(predict)
x0 = data[label_pred == 0]
x1 = data[label_pred == 1]

plt.scatter(x0["光照"], x0["CO2"],c="red", linewidths=1, alpha=0.8,marker='o', label='label0')
plt.scatter(x1["光照"], x1["CO2"],c="green", linewidths=1, alpha=0.8,marker='+', label='label1')
plt.grid(c="#95a5a6", linestyle="--", linewidth=1, alpha=0.4)
plt.legend()
plt.show()

到此這篇關于python利用K-Means算法實現對數據的聚類的文章就介紹到這了,更多相關python K-Means算法數據的聚類內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python退火算法在高次方程的應用
  • Python實現K-means聚類算法并可視化生成動圖步驟詳解
  • 開源一個c# 新的雪花算法
  • 谷歌師兄的算法刷題筆記
  • Python實現粒子群算法的示例
  • 如何使用Java模擬退火算法優化Hash函數

標簽:黃山 景德鎮 喀什 濟南 三沙 臺灣 宿遷 欽州

巨人網絡通訊聲明:本文標題《python利用K-Means算法實現對數據的聚類案例詳解》,本文關鍵詞  python,利用,K-Means,算法,實現,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python利用K-Means算法實現對數據的聚類案例詳解》相關的同類信息!
  • 本頁收集關于python利用K-Means算法實現對數據的聚類案例詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 萍乡市| 东辽县| 山丹县| 荆门市| 曲沃县| 玛沁县| 奉新县| 镇宁| 新津县| 河东区| 苗栗市| 舟曲县| 隆化县| 蒲城县| 始兴县| 巴中市| 桐城市| 龙州县| 封丘县| 康马县| 门源| 宜兰市| 阜平县| 邮箱| 阜康市| 剑川县| 桐梓县| 晋中市| 临洮县| 汶上县| 砀山县| 广灵县| 吴川市| 怀来县| 邵阳市| 永善县| 潜山县| 南汇区| 宁安市| 长葛市| 高安市|