我正在比较两个datetime64 [ns]列,它返回一个错误- 引发TypeError(“无法更改对象数组的数据类型。”)
a_col和b_col均为datetime64 [ns],并且其中都包含NaN。
df[res] = (df[a_col] == df[b_col]) | (df[[a_col, b_col]].isnull().any(axis=1))
我在上面的代码中尝试的是,如果日期匹配,则返回True;如果两个列中的两个值均为空,则返回True。
问题似乎发生在该行的第二部分-
(df[[a_col, b_col]].isnull().any(axis=1))
所以,我认为这与NaN的关系很大。