【发布时间】:2022-01-02 10:56:56
【问题描述】:
我有一个包含两列的数据框,我想为第一列中的相同值创建一个包含第二列中所有值的列表。
如果我有一个看起来像这样的数据框:
| Type | Item |
|---|---|
| Cars | Toyota |
| Cars | Honda |
| Cars | Tesla |
| Fruits | Apple |
| Fruits | Orange |
| Countries | USA |
| Countries | Mexico |
所以我希望能够将此数据帧划分为汽车、水果和国家/地区的三个单独的 df。或者我想要一份关于汽车、水果和国家/地区的清单:
Cars = ['Toyota', 'Honda', 'Tesla']
Fruits = ['Apple', 'Orange']
Countries = ['USA, 'Mexico']
这只是一个例子,我的数据框很大,所以我希望有一个函数可以做到这一点,而不必手动输入每个类型。我尝试为 pandas 查找 groupby 函数,但我认为我无法找到如何使用它来做我需要做的事情。
感谢任何帮助。
【问题讨论】:
-
查看 groupby 功能
-
我做到了!但我不明白如何在这种情况下正确使用它。
-
如果没有看到您的任何数据或您编写的任何产生问题的代码,很难回答您的问题。请查看 Jon Skeet 的优秀博文 WRITING THE PERFECT QUESTION 以获取更新问题的指导。有关提出好问题的更详细教程,请参阅 Eric S. Raymond 的网站How To s The Smart Way
-
df.groupby('Type').agg(list)
标签: python pandas dataframe group-by