索引在序列相等性中起着作用,我想运行一个检查,忽略索引,只考虑值,同时还处理不同长度的情况。
pandas.Series.equals
处理不同长度的部分,但也施加了索引相等约束。为了绕过它,我做了以下操作...
def isEqualValues( s1 , s2 ) :
return s1.reset_index(drop=True).equals( s2.reset_index(drop=True) )
到目前为止,这个方法运行得很好,
>>> import pandas
>>> s_a = pandas.Series([1,2,3])
>>> s_b = pandas.Series([1,2,3], index=[10,11,12] )
>>> s_c = pandas.Series([1,2])
>>>
>>> print( isEqualValues( s_a , s_b ) )
True
>>> print( s_a.equals( s_b ) )
False
>>> print( isEqualValues( s_a , s_c ) )
False
>>> print( s_a.equals( s_c ) )
False
有没有官方的方法可以在熊猫本身执行这个操作,而不是求助于重置索引?
发布于 2018-06-05 06:37:09
关于
(s_a.values == s_b.values).all()
https://stackoverflow.com/questions/50689552
复制相似问题