Python 熊猫数据帧-具有重新组织数据的新数据帧
我对Pandas还不熟悉,正在尝试从现有的数据帧创建一个新的数据帧 我当前的数据帧具有以下格式:Python 熊猫数据帧-具有重新组织数据的新数据帧,python,pandas,dataframe,pandas-groupby,Python,Pandas,Dataframe,Pandas Groupby,我对Pandas还不熟悉,正在尝试从现有的数据帧创建一个新的数据帧 我当前的数据帧具有以下格式: ID Country Status ABC USA Go ABC Columbia Stop ABC Japan Pause ABC Egypt Go DEF Canada Go DEF Peru Stop 我正试图整合数据,使其更加紧凑。我的新格式是: ID Go Stop Pa
ID Country Status
ABC USA Go
ABC Columbia Stop
ABC Japan Pause
ABC Egypt Go
DEF Canada Go
DEF Peru Stop
我正试图整合数据,使其更加紧凑。我的新格式是:
ID Go Stop Pause
ABC USA, Egypt Columbia Japan
DEF Canada Peru
基本上,可能的状态值成为列,对于每个ID,这些列都填充有具有该状态的国家的列表。我是
对熊猫来说是新事物,正在努力寻找最好的方法来解决这个问题——任何建议都将不胜感激 您可以使用:
您可以使用:
如果你一定要这样做,那么你就是这样做的
In [48]: df.groupby(['ID', 'Status'])['Country'].apply(','.join).unstack()
Out[48]:
Status Go Pause Stop
ID
ABC USA,Egypt Japan Columbia
DEF Canada NaN Peru
如果你一定要这样做,那么你就是这样做的
In [48]: df.groupby(['ID', 'Status'])['Country'].apply(','.join).unstack()
Out[48]:
Status Go Pause Stop
ID
ABC USA,Egypt Japan Columbia
DEF Canada NaN Peru
这似乎是个坏主意。目的是什么?@Denziloe,在我看来,输出并不比输入差。至少我们在这些系列中没有列表。@Denzlioe这主要是为了演示的目的-为了简单起见,我正在处理的实际数据比这里显示的数据有更多的列。我的用户喜欢每个ID有一行。这似乎是个坏主意。目的是什么?@Denziloe,在我看来,输出并不比输入差。至少我们在这些系列中没有列表。@Denzlioe这主要是为了演示的目的-为了简单起见,我正在处理的实际数据比这里显示的数据有更多的列。我的用户希望每个ID有一行。谢谢,@jpp。这很有魅力。谢谢你帮了一个初学者。谢谢,@jpp。这很有魅力。谢谢你帮助一个初学者。