pandas - 熊猫 - 组合
问题描述
我有一个数据框
supper_meal_list = pd.DataFrame({'Meal': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ,16, 17, 18, 19, 20],
'Meal_Type': ['Good','Cheat', 'Cheat', 'Good', 'Medium', 'Cheat', 'Good', 'Good', 'Good', 'Good', 'Good', 'Good', 'Cheat', 'Medium', 'Medium', 'Good',
'Good', 'Good', 'Good', 'Cheat'],
'Meal_speed': [15, 23, 50, 12, 7, 25, 27, 32, 12, 67, 43, 32, 56, 14, 19, 24, 27, 17, 92, 26]})
我想找到“Meal_speed”最快或最少的前 10 种膳食类型组合 (supper_meal_list['Meal_speed'])。
我可以使用 itertools.combinations 包获取每周 5 天的组合列表。
comb = combinations(supper_meal_list['Meal'], 5)
for i in list(comb):
print (i)
但是,找到相关行以求和 meal_speed 并使用 rank() 的最佳方法是什么?
下面是我对前 3 个组合的预期输出示例
df = pd.DataFrame({'Combo': [[1 ,2 , 3, 4, 5], [1, 2, 3, 4, 6], [1, 2, 3, 4, 7],
'Week_Meal_speed': [107, 125, 127]})
解决方案
推荐阅读
- c++ - C++ 检查模板参数是否是特定类型的函数
- reactjs - 在 React.js 中根据 uid 检索 firebase 集合
- c++ - 在 C++ 中将十进制转换为二进制年份
- vue.js - 带有猫头鹰轮播的动态图像
- python - 将矩阵保存在文件中,并找出有多少单元格将某个值作为输入接收
- .net - Azure App Service .net6 部署 - 错误:EISDIR:对目录进行非法操作,打开“/home/site/wwwroot/wwwroot/Identity/lib/bootstrap/LICENSE”
- python - 从第一个 '\n' 切分列表中的所有字符串
- python - 我的音频数据集形状多种多样,因此它提高了错误维度
- json - 将来自 JSON 的单独推文数据添加到列表中
- asp.net - 客户端使用旧 HTTP 版本时重定向到错误