首页 > 解决方案 > 在忽略 NaN 的同时识别列中的相等性

问题描述

如何忽略等于熊猫的空/NaN 列。

所以它返回 TRUE 是 col 2 与 1 相同,并且当 col 2 包含一个NaN

df['col1'].equals(df['col2'])

标签: pythonpandasequalssimilarity

解决方案


使用与 col2 相同的中间列(系列),但将 NaN 值设置为 col1 中的值。

import pandas as pd
df = pd.DataFrame({'col1': [1., 2, 3, 4, 5, 6], 'col2': [1, 2, None, 4, 5, None]})
df['col1'].equals(df['col2'])
s = df['col2'].fillna(df['col1'])
df['col1'].equals(s)

推荐阅读