我有一个名为 result
的数据框:
find_a id find_b id
yes 0001 yes 0001
no 0002 yes 0002
no 0003 no 0003
yes 0004 no 0004
yes 0005 yes 0005
我有以下内容:
result.find_a.values==find_b.values
重新调整了一个真/错误的数组: array([ True, False, True, False, True])
如何以此为基础并获得True
的数量?如果我能得到计数,那么我稍后可以在列之间获得一定比例的匹配记录,即。find_a
与find_b
匹配40%的时间。
另外,我不确定我是否正在沿着Numpy或Pandas路线进行冒险...
感谢提前的帮助。
,除非您要处理大量数据,否则无论使用numpy还是pandas,这确实无关紧要。由于您使用的是大熊猫,我建议您只坚持基础知识,除非您知道您需要其他。
要回答您的原始问题,您可以使用mean
获得True
值的%:
(df['find_a'] == df['find_b']).mean()
# 0.6
在哪里,
df['find_a'] == df['find_b']
0 True
1 False
2 True
3 False
4 True
dtype: bool
len(result[result.find_a == result.find_b])
np.mean(result.find_a == result.find_b)