首页 > 解决方案 > 如何拆分元组并将其保存到数据框

问题描述

我有一个这样的元组列表:

a=[('A7855', 'item1', 'item2'),('A7856', 'item3', 'item4', 'item5')]

我想将该列表保存到数据框中,如下所示:

No    ID     itemNum
1     A7855  item1
2            item2
3     A7856  item3
4            item4
5            item5

我该如何解决这个问题?

标签: pythonpython-3.xpandasdataframetuples

解决方案


你也可以melt在这里使用::

df=(pd.DataFrame(a).melt(0,value_name='itemNum').
drop('variable',1).dropna().sort_values(0).rename(columns={0:'ID'}).reset_index(drop=True))
print(df)

      ID itemNum
0  A7855   item1
1  A7855   item2
2  A7856   item3
3  A7856   item4
4  A7856   item5

为了满足您的确切要求,请执行以下操作df

df.loc[df.duplicated('ID'),'ID']=''
df.insert(0,'No',range(1,len(df)+1))
print(df)

   No     ID itemNum
0   1  A7855   item1
1   2          item2
2   3  A7856   item3
3   4          item4
4   5          item5

推荐阅读