>>> a = pa.array([1.0, 1.5, 1.0, math.nan])
>>> b = pc.dictionary_encode(a)
>>> pc.is_null(a, nan_is_null=True)
<pyarrow.lib.BooleanArray object at 0x129d0ab60>
[
false,
false,
false,
true
]
>>> pc.is_null(b, nan_is_null=True)
<pyarrow.lib.BooleanArray object at 0x129d0a0e0>
[
false,
false,
false,
false
]
Describe the bug, including details regarding any error messages, version, and platform.
bis just a dictionary-encoded copy ofa, so the compute kernel should have the same output. But it dosen't becausenan_is_nullis ignored when looking up dictionary values. This will involve changes toSetLogicalNullBits(see #49889). Also consider updating atArraySpan::ComputeLogicalNullCount.Component(s)
C++