可以使用Pandas的groupby
方法对数据帧进行分组,然后使用apply
方法将列放回。以下是解决方法的代码示例:
import pandas as pd
# 创建示例数据帧
df = pd.DataFrame({
'Group': ['A', 'B', 'A', 'B', 'A'],
'Value1': [1, 2, 3, 4, 5],
'Value2': [6, 7, 8, 9, 10]
})
# 按照Group列进行分组,并将Value1和Value2列放回
df_grouped = df.groupby('Group').apply(lambda x: pd.DataFrame({
'Value1': x['Value1'].values,
'Value2': x['Value2'].values
}))
# 重置索引
df_grouped = df_grouped.reset_index(level=1, drop=True)
print(df_grouped)
输出结果:
Value1 Value2
Group
A 1 6
A 3 8
A 5 10
B 2 7
B 4 9
在上面的代码中,我们首先使用groupby
方法按照'Group'列进行分组。然后使用apply
方法将每个组中的'Value1'和'Value2'列放回到一个新的数据帧中。最后,使用reset_index
方法重置索引,使'Group'列成为新的索引。