Pandas:如何将多值单元格转换为多行?

2024-09-28 17:20:12 发布

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

我有这样一个数据帧:

Name asn
Org1 asn1,asn2
org2 asn3
org3 asn4,asn5

我想把我的数据帧转换成这样:

^{pr2}$

有人知道我怎么做吗?在


Tags: 数据nameasnasn1pr2org2org1org3
1条回答
网友
1楼 · 发布于 2024-09-28 17:20:12

假设您的起始数据帧名为df,您可以编写:

>>> df2 = df.asn.str.split(',').apply(pd.Series)          # break df.asn into columns
>>> df2.index = df.Name                                   # set the index as df.Name
>>> df2 = df2.stack().reset_index('Name')                 # stack and reset_index
>>> df2
    Name       0
0   Org1    asn1
1   Org1    asn2
0   org2    asn3
0   org3    asn4
1   org3    asn5

剩下要做的就是重命名列:

^{pr2}$

根据您的下一步行动,您可能还需要设置一个更有用的索引。在

相关问题 更多 >