一、 实验目的:
加深对非监督学习的理解,掌握K-means聚类算法的设计方法。
二、 实验要求及实验环境
生成3个高斯分布数据(样本数据量至少1000),协方差矩阵为单位阵,并将其写入文件中;
利用K-Means聚类方法对生成的数据进行聚类。
三、 实验报告
1.程序源代码
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 设置字体样式
plt.rcParams['axes.unicode_minus']=False # 设置字符不显示
import warnings
warnings.filterwarnings('ignore') # 不显示警告信息
from sklearn.cluster import KMeans
from sklearn.datasets import make_gaussian_quantiles
from sklearn.manifold import TSNE
from sklearn.model_selection import GridSearchCV
from sklearn.metrics import calinski_harabasz_score, silhouette_score,davies_bouldin_score
# 生成协方差为单位矩阵,样本数据量为1000,每个样本特征为2
x1, y1 = make_gaussian_quantiles(cov=1,n_samples=1000,n_features=2)
# 写入文件
res = pd.DataFrame(x1)
res.to_csv('1.csv')
# 原始数据分布散点图
plt.figure(figsize=(25, 25))
plt.