对Customer_Info.csv使用kmeans算法,进行银行客户分组画像,使用Python进行编译
时间: 2024-02-19 22:02:48 浏览: 136
好的,以下是一个使用Python实现对Customer_Info.csv进行KMeans聚类分析的示例代码:
```python
import pandas as pd
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt
# 读取数据
df = pd.read_csv('Customer_Info.csv')
# 数据预处理
df = df.dropna() # 删除空值行
df = df[['age', 'income', 'expenses', 'savings']] # 选择相关特征
# KMeans聚类
sse = []
for k in range(1, 11):
kmeans = KMeans(n_clusters=k, random_state=42)
kmeans.fit(df)
sse.append(kmeans.inertia_)
# 肘部法则确定K值
plt.plot(range(1, 11), sse)
plt.title('Elbow Method')
plt.xlabel('Number of Clusters')
plt.ylabel('SSE')
plt.show()
# 选择K=3进行聚类
kmeans = KMeans(n_clusters=3, random_state=42)
kmeans.fit(df)
labels = kmeans.labels_
# 绘制散点图
plt.scatter(df['income'], df['expenses'], c=labels)
plt.xlabel('Income')
plt.ylabel('Expenses')
plt.show()
```
在这个示例中,我们使用了pandas库来读取和预处理数据,sklearn库中的KMeans算法进行聚类分析,并使用matplotlib库绘制图表来可视化分析结果。
首先,我们读取数据并选择了年龄、收入、开销和储蓄等重要特征。接着,我们使用肘部法则确定K值,并选择K=3进行聚类。最后,我们使用散点图可视化聚类结果。
请注意,您可以根据数据特点和分析目的对代码进行调整和修改。希望这个示例能对您有所帮助!
阅读全文