使用K-means算法将市场中的宠物根据价格、品种等特征进行聚类,发现不同类型宠物的市场需求和价格趋势。相关Python代码
时间: 2024-01-22 08:17:53 浏览: 11
以下是使用Python中的sklearn库实现K-means算法进行宠物市场聚类的代码示例:
```python
import pandas as pd
from sklearn.cluster import KMeans
from sklearn.preprocessing import MinMaxScaler
# 读取数据
data = pd.read_csv('pet_market.csv')
# 特征选择
X = data[['price', 'breed']]
# 数据归一化
scaler = MinMaxScaler()
X_scaled = scaler.fit_transform(X)
# KMeans聚类
kmeans = KMeans(n_clusters=3)
kmeans.fit(X_scaled)
y_kmeans = kmeans.predict(X_scaled)
# 聚类结果可视化
import matplotlib.pyplot as plt
plt.scatter(X_scaled[:, 0], X_scaled[:, 1], c=y_kmeans, s=50, cmap='viridis')
plt.xlabel('Price')
plt.ylabel('Breed')
plt.show()
```
其中,`pet_market.csv`文件是包含宠物市场数据的CSV文件,包含价格和品种两个特征。在代码中,使用`pandas`库读取数据,选择需要进行聚类的特征,并使用`MinMaxScaler`进行数据归一化处理。然后,使用`sklearn`库中的`KMeans`类进行聚类操作,将数据分为3个簇。最后,使用`matplotlib`库将聚类结果可视化展示出来。
需要注意的是,实际使用时需要根据数据情况进行调整,如选择最优的聚类数量、选择最佳的特征等。