python 은 K-Means 알고리즘 을 이용 하여 데이터 의 집합 사례 에 대한 상세 한 설명 을 실현 합 니 다.

수집 데이터 의 이상 치 를 검출 하기 위해 서다.그래서 명확 하 다.이런 상황 에서 의 클 러 스 터 는 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 를 2 차원 데이터 로 선 택 했 는데,그 중 온도 에 이상 데이터 가 들 어 있 었 다.

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_ #       
분 류 된 label 0 과 label 1 의 데 이 터 를 출력 합 니 다.

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 알고리즘 데이터 의 집합 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 지원 을 바 랍 니 다!

좋은 웹페이지 즐겨찾기