小编ste*_*488的帖子

自我加入熊猫后如何获得2列之间的唯一关系?

import pandas as pd

data={'x':['A','A','B','B','C','E','F'],
      'y':['B','C','A','C','D','F','G']}
df=pd.DataFrame(data)

print(df)
Run Code Online (Sandbox Code Playgroud)

我有一个像这样的大数据框(简化为ABC):

     x    y
0    A    B
1    A    C
2    B    A
3    B    C
4    C    D
5    E    F
6    F    G
Run Code Online (Sandbox Code Playgroud)

有一些"循环",如第0行:A < - > B和第2行:B < - > A,这对我来说意味着相同的关系.

我希望得到x和y列值之间的关系,并给它们一个唯一的新id.

因此,对于此示例表,这意味着:

A = B = C = D给它一个唯一的id,即90 E = F = G给它一个唯一的id,即91

我需要的Result表应该是:

    id  value
0   90    A
1   90    B
2   90    C 
3   90    D
4   91    E
5   91    F
6   91    G
Run Code Online (Sandbox Code Playgroud)

我怎么能用熊猫来实现这个目标?非常感谢帮助!

python unique relation networkx pandas

2
推荐指数
1
解决办法
120
查看次数

标签 统计

networkx ×1

pandas ×1

python ×1

relation ×1

unique ×1