在今天的时代,公司努力工作,使他们的客户满意。他们推出新的技术和服务,以便客户可以更多地使用他们的产品。他们试图与每一个客户保持联系,以便他们能够相应地提供货物。但实际上,与每个人保持联系非常困难和不现实。因此,这里来使用客户细分。
客户细分是指根据客户的相似特征、行为和需求对客户进行细分。这最终将在许多方面帮助公司。比如,他们可以推出产品或相应地增强功能。他们也可以根据自己的行为针对特定部门。所有这些都导致了公司整体市场价值的提升。
今天,我们将使用机器学习来实现客户细分的任务。
导入库
我们需要的库是:
- Pandas -此库有助于以2D数组格式加载数据框。
- Numpy - Numpy数组非常快,可以执行大型计算。
- Matplotlib / Seaborn -此库用于绘制可视化。
- Sklearn -该模块包含多个库,这些库具有预实现的功能,可以执行从数据预处理到模型开发和评估的任务。
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sb
from sklearn.preprocessing import StandardScaler, LabelEncoder
from sklearn.cluster import KMeans
import warnings
warnings.filterwarnings('ignore')
导入数据集
用于任务的数据集包括客户的详细信息,包括他们的婚姻状况、他们的收入、购买的物品的数量、购买的物品的类型等。
df = pd.read_csv('new.csv')
df.head()
df.shape
输出:
(2240, 25)(2240, 25)
数据预处理
df.info()
df.describe().T
df['Accepted'] = df['Accepted'].str.replace('Accepted', '')
检查数据集中的空值。
for col in df.columns:
temp = df[col].isnull().sum()
if temp > 0:
print(f'Column {
col} contains