累计购买次数最多的客户是谁?
PandasAI 会直接告诉你答案,而不你用去写很多代码,也不用做一些繁琐的操作。
!pip install pandasai
from pandasai import SmartDataframe
import numpy as np
import pandas as pd
from faker import Faker
# 创建数据生成器
fake = Faker('zh_CN')
# 设置随机种子以确保可重复的结果
np.random.seed(0)
fake.random.seed(0)
# 生成数据集
data = {
'客户姓名': [fake.name() for _ in range(100)],
'性别': [fake.random.choice(['男', '女']) for _ in range(100)],
'年龄': np.random.randint(18, 70, size=100),
'所在省份': [fake.province() for _ in range(100)],
'最近购买时间': [fake.date_between(start_date='-2y', end_date='today') for _ in range(100)],
'累计购买次数': np.random.randint(1, 20, size=100),
'累计购买金额': np.random.normal(loc=1000, scale=500, size=100)
}
# 累计购买金额与累计购买次数的合理比例
data["累计购买金额"] = [round(times * np.random.uniform(500, 800), 2) for times in data["累计购买次数"]]
# 创建 DataFrame
df = pd.DataFrame(data)
import os
os.environ['PANDASAI_API_KEY'] = "把你的 API 密钥复制到这里"
sdf = SmartDataframe(df)
print(sdf.last_code_generated)
sdf.chat("请用直方图展示客户年龄分布")
sdf.chat("请用直方图展示客户年龄分布,\
并用 plt.rcParams['font.sans-serif'] = ['SimHei'] 来正常显示中文标签")
sdf.chat("请用直方图展示客户年龄分布,\
并用 plt.rcParams['font.sans-serif'] = ['SimHei'] 来正常显示中文标签,\
上面的标题用 16 号字体。")
sdf.chat("请对数据绘制相关性矩阵图,\
并用 plt.rcParams['font.sans-serif'] = ['SimHei'] 来正常显示中文标签")
↑ 点击此卡片关注 ↑