用python kmeans聚类自选数据集完成聚类及可视化 对于一些学习成绩进行分析,分出学习成绩的好坏 语文数学英语1号758394 2号886651 3号325493 4号655883
时间: 2024-03-25 15:38:24 浏览: 70
好的,这里是使用 Python 进行 K-Means 聚类并可视化的示例代码,可以对给定的学习成绩数据进行分析,分出学习成绩的好坏。
首先,我们需要导入必要的库:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
```
然后,我们需要定义数据集。在这个例子中,我们可以将每个样本看作是一个学生,分别具有语文、数学、英语三门课的成绩。可以将每个样本看作是一个三维空间中的点。
```python
# 定义数据集
data = np.array([
[75, 83, 94],
[88, 66, 51],
[32, 54, 93],
[65, 58, 83]
])
```
接着,我们使用 K-Means 算法对数据进行聚类,同时指定聚类个数为 2(即将成绩分为好和不好两类)。
```python
# 定义聚类个数
k = 2
# 初始化KMeans模型
kmeans = KMeans(n_clusters=k)
# 对数据进行聚类
kmeans.fit(data)
# 获取聚类结果
labels = kmeans.labels_
```
最后,我们将聚类结果可视化:
```python
# 可视化聚类结果
plt.scatter(data[:,0], data[:,1], c=labels)
plt.show()
```
运行完整代码,即可得到学习成绩数据的聚类结果。
完整代码如下:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
# 定义数据集
data = np.array([
[75, 83, 94],
[88, 66, 51],
[32, 54, 93],
[65, 58, 83]
])
# 定义聚类个数
k = 2
# 初始化KMeans模型
kmeans = KMeans(n_clusters=k)
# 对数据进行聚类
kmeans.fit(data)
# 获取聚类结果
labels = kmeans.labels_
# 可视化聚类结果
plt.scatter(data[:,0], data[:,1], c=labels)
plt.show()
```
根据代码输出的可视化图表,可以看出聚类结果,从而分析出学习成绩的好坏。
阅读全文