如何合并pandas数据帧并过滤不同列中的重复内容?

2024-10-03 04:27:05 发布

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

我正在用Python2.7学习熊猫。我在pandas中学习merge()方法。在

以下是我创建数据帧的代码:

import pandas as pd

eibi = {'A': ['aaa','bbb','ccc','eee','fff'],
        'B': ['bbb','aaa','ccc','fff','eee']
        }

df = pd.DataFrame(eibi)

print df

结果是:

^{pr2}$

我想通过数据帧本身中的行合并数据帧。目标是如果B列中的单元格与A列中的单元格匹配,则将该单元格移到C列和D列

我希望下面的数据帧能让我清楚地知道我所期望的数据帧。在

^{3}$

我试图复制df dataframe,然后使用merge()方法和left merge将其合并。这是我的代码:

fd = df

new_dataframe = pd.merge(left=df, right=fd, left_on='A', right_on='B', how='left')

print new_dataframe

输出是:

   A_x  B_x  A_y  B_y
0  aaa  bbb  bbb  aaa
1  bbb  aaa  aaa  bbb
2  ccc  ddd  
3  eee  fff  fff  eee
4  fff  eee  eee  fff

我的问题是“如何删除索引1和索引4?”“有没有其他方法可以得到预期的结果?”在


Tags: 数据方法代码dataframepandasdffffmerge
1条回答
网友
1楼 · 发布于 2024-10-03 04:27:05

因为你的问题是如何删除索引1和索引4

output[~pd.DataFrame(np.sort(output.values)).duplicated()]
Out[816]: 
   A_x  B_x  A_y  B_y
0  aaa  bbb  bbb  aaa
2  ccc  ddd          
3  eee  fff  fff  eee

相关问题 更多 >