利用sklearn包里的BIRCH算法,以iris数据集,聚类结果可视化
代码如下
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets.samples_generator import make_blobs
from sklearn.cluster import Birch
import urllib.request
import sys
from sklearn.manifold import TSNE
import pandas as pd
# import ybirch
with open("F:\Tabtad\Downloads\iris\Iris.txt", 'r') as f:#打开数据文件
line = f.readlines()
# data = urllib.request .urlopen(target_url),encoding = 'utf-8'
xList = []
# labels = []
for data in line:
# line = line.decode()
row = data.strip().split(",")#切词,并将数据变成浮点形式
row = list(map(float,row))
# labels.append(row[0])
del row[0]
xList.append(row)
X = np.array(xList)#转为numpy的矩阵形式
print(xList)
print(X)
#未使用Birch之前的数据情况
plt.scatter(X[:,0], X[:,1],X[:,2], marker = 'o')
plt.show()
# print(l