Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 熊猫在两列之间放置重复项_Python_Pandas - Fatal编程技术网

Python 熊猫在两列之间放置重复项

Python 熊猫在两列之间放置重复项,python,pandas,Python,Pandas,我正在寻找一种有效的方法来删除数据帧中两列之间的重复项。所以,我的数据是 A B 0 1 0 1 1 1 2 nan 2 3 8 3 4 7 7 我想得到这个 A B 0 1 0 1 nan 2 2 8 3 我怎样才能得到这样的输出?谢谢 试试这个: df = df[df.A != df.B] 按要求使用循环: dups_index = [] for i, row in df.iterrows(): if row

我正在寻找一种有效的方法来删除数据帧中两列之间的重复项。所以,我的数据是

   A  B 
0  1  0  
1  1  1  
2  nan  2  
3  8  3
4  7  7
我想得到这个

   A  B 
0  1  0  
1 nan  2  
2  8  3
我怎样才能得到这样的输出?谢谢

试试这个:

df = df[df.A != df.B]
按要求使用循环:

dups_index = []
for i, row in df.iterrows():
    if row['A'] == row['B']:
        dups_index.append(i)
df = df[~df.index.isin(dups_index)]

它是有效的,但我认为,它的效率没有那么高(很抱歉。如果您找到一种更有效的方法,请告诉我:)在循环中执行此操作可能不会更有效率。但我会把它加到我的答案中。我不知道有什么更快的方法可以做到这一点。
df=df[df.A!=df.B]
的原始答案应该比循环快得多。对于10000x2元素,第一个解决方案比第二个解决方案快1500倍左右。。。