[英]How to split a pandas dataframe into many columns after groupby
我希望能够在pandas中使用groupby按列对数据进行分组,然后将其拆分,以便每个组在数据帧中都是自己的列。
例如:
time data
0 1 2.0
1 2 3.0
2 3 4.0
3 1 2.1
4 2 3.1
5 3 4.1
etc.
成
data1 data2 ... dataN
time
1 2.0 2.1 ...
2 3.0 3.1 ...
3 4.0 4.1 ...
我确定开始的地方是df.groupby('time')但是我似乎无法找出使用concat(或其他函数)构建我想要的拆分数据框架的正确方法。 我可能会在API中忽略一些简单的功能。
我同意@PhillipCloud。 我认为这可能是解决问题的一个中间步骤,但是如果没有中间步骤,可能更容易陷入你真正想要解决的问题。
但如果这是你真正想要的,你可以使用:
>>> df.groupby('time').apply(
lambda g: pd.Series(g['data'].values)
).rename(columns=lambda x: 'data%s' % x)
data0 data1
time
1 2 2.1
2 3 3.1
3 4 4.1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.