Python 如何验证数据帧的两个系列具有相同的元素?
我希望比较一个数据帧中的两个序列,并得到一个布尔真或假答案,以确定它们是否具有完全相同的元素 如果一个元素不同,那么我想知道它的索引号Python 如何验证数据帧的两个系列具有相同的元素?,python,pandas,compare,series,Python,Pandas,Compare,Series,我希望比较一个数据帧中的两个序列,并得到一个布尔真或假答案,以确定它们是否具有完全相同的元素 如果一个元素不同,那么我想知道它的索引号 谢谢大家! IIUC您可以使用isin: In [123]: s1 = pd.Series(np.arange(5)) s2 = pd.Series(np.arange(1,6)) s2 Out[123]: 0 1 1 2 2 3 3 4 4 5 dtype: int32 In [125]: s1.isin(s2) O
谢谢大家! IIUC您可以使用
isin
:
In [123]:
s1 = pd.Series(np.arange(5))
s2 = pd.Series(np.arange(1,6))
s2
Out[123]:
0 1
1 2
2 3
3 4
4 5
dtype: int32
In [125]:
s1.isin(s2)
Out[125]:
0 False
1 True
2 True
3 True
4 True
dtype: bool
通过使用~
对掩码求反,可以从上面获得为False的索引值:
In [127]:
s1[~s1.isin(s2)].index
Out[127]:
Int64Index([0], dtype='int64')
EdChum,谢谢你的回答
这比我设法解决的问题要好,我将在下面发布:
ser1 = Series(np.arange(16))
arr = ser1.reshape(4,4)
df = DataFrame((arr),columns=['a','b','c','d'])
ser_e = Series([2,6,10,14])
df['e'] = ser_e
df['c']>df['b']
df.loc[df['c'] != df['e'] ]
你能添加一些例子吗?对不起,我不熟悉堆栈溢出。。我的代码贴在下面,(上面的第二个答案)。