已知我国苹果主要产地为山东烟台、陕西洛川、新疆阿克苏、甘肃天水、山西临猗。现在假设某岗平台上苹果店铺为356家,平均销量为x吨。构建数据集如下:
shop_id = np.arange(356)
product_ = np.random.choice(["山东烟台", "陕西洛川", "新疆阿克苏", "甘肃天水", "山西临猗"], 356)
quantity = np.random.choice(np.arange(1, 10), 356)
苹果 = pd.DataFrame({"店铺id": shop_id, "产地": product_, "销量": quantity})
苹果.head()
| 店铺id | 产地 | 销量 | |
|---|---|---|---|
| 0 | 0 | 甘肃天水 | 6 |
| 1 | 1 | 陕西洛川 | 7 |
| 2 | 2 | 甘肃天水 | 2 |
| 3 | 3 | 新疆阿克苏 | 3 |
| 4 |
4 | 山东烟台 |
5 |
根据groupby函数对产地进行分组
groups_var = 苹果.loc[:, ["产地", "销量"]].groupby(["产地"])
当调用groups_var.groups.keys()后,可以得到分组类别信息:
> groups_var.groups.keys()
dict_keys(['山东烟台', '山西临猗', '新疆阿克苏', '甘肃天水', '陕西洛川'])
当调用groups_var.get_group("山东烟台"),可以得到山东烟台的原始数据:
> groups_var.get_group("山东烟台").head(3)
产地 销量
4 山东烟台 5
9 山东烟台 9
14 山东烟台 8
当调用groups_var.ngroup()后,可以对原始数据添加所属组别信息:
> groups_var.ngroup().unique()
array([3, 4, 2, 0, 1], dtype=int64)
当调用groups_var.describe()后,可以得到每组统计描述特征:
> groups_var.describe().round(2)
销量
count mean std min 25% 50% 75% max
产地
山东烟台 76.0 5.50 2.53 1.0 4.0 6.0 8.00 9.0
山西临猗 65.0 5.40 2.37 1.0 4.0 5.0 7.00 9.0
新疆阿克苏 72.0 5.18 2.57 1.0 3.0 5.0 7.25 9.0
甘肃天水 63.0 5.70 2.34 1.0 4.0 6.0 8.00 9.0
陕西洛川 80.0 4.28 2.76 1.0 2.0 3.0 6.25 9.0
本文介绍了如何在pandas中利用groupby函数对苹果产地数据进行分组,并通过get_group获取特定产地的数据,使用ngroup添加组别信息,以及利用describe展示各组的统计描述特征。
2336

被折叠的 条评论
为什么被折叠?



