sql - Pandas-与 SQL 的比较-有人可以解释一下这段代码吗
问题描述
(tips[tips['tip'] < 2]\
.assign(rnk_min=tips.groupby(['sex'])\
['tip'].rank(method='min'))\
.query('rnk_min < 3')\
.sort_values(['sex', 'rnk_min']))
解决方案
显然有些事情是清楚的
- 选择小费 < 2 的任何人
- 创建列
assign()
- 对人进行排名,然后进一步过滤到排名 < 3 的人
一些用于生成数据集的代码,以便您可以在 jupyter notebook 中进行实验
sex = ["Male","Female"]
s = ['Living_With_Partner','Divorced','Separated','Married','Missing','Never_Married','Widowed']
tips = pd.DataFrame([[random.randint(15,80), sex[random.randint(0,1)], s[random.randint(0,len(s)-1)],
random.randint(0,50)] for r in range(200)],
columns=["age","sex","status","tip"])
tips
(tips[tips['tip'] < 2]\
.assign(rnk_min=tips.groupby(['sex'])\
['tip'].rank(method='min'))\
.query('rnk_min < 3')\
.sort_values(['sex', 'rnk_min']))
推荐阅读
- python - 无法在python中加载txt文件
- flutter - Flutter 数据表布局
- mongodb - 使用 MongoCLI 进行 MongoDB 测试故障转移
- javascript - 我想在我的数据库中运行下一首歌曲
- odoo-11 - 域字段 many2one 基于另一个 many2one 字段 Odoo 11
- html - 单击每个选项卡时,我可以刷新引导选项卡的内容吗?
- xaml - 如何将属性绑定到 CollectionView DataTemplate 中的元素
- c# - 在gridview c#中交换列
- c++ - c++ 两个给定日期之间的天数
- javascript - 在我的网站上创建 spotify 播放列表关注按钮