熊猫列1的值,列2的名称,有没有办法对数据进行分组和重新排列,使列2成为行标题

2024-04-19 13:04:19 发布

您现在位置:Python中文网/ 问答频道 /正文

数据是唯一的值,id在excel文件中重复多次。数据是第1列,id是第2列。我希望将唯一的数据值分组到一个id,而不会丢失任何数据。然后将列索引设置为id,并粘贴下面关联的数据值。然后对第二个id执行相同的操作,并将该id的值粘贴到第一个id列左侧1个单元格下面。有人能帮我把它整理成这样的布局吗

enter image description here


Tags: 文件数据id粘贴布局excel整理
1条回答
网友
1楼 · 发布于 2024-04-19 13:04:19

数据帧中不能有不同长度的列。因此NaN是不可避免的

import pandas as pd

df = pd.DataFrame({'col1':[2,3,3,4,2,1,3,4], 'col2':[1,1,1,1,2,2,2,3]})

# First problem
df2 = df.pivot(columns='col2')["col1"]
df2 = df2.apply(lambda x: pd.Series(x.dropna().values))
print(df2)

# Second problem
def concat(s):
  return s.tolist()

df3 = df.groupby('col2').agg(concat)["col1"].apply(pd.Series)
print(df3)

相关问题 更多 >