This rule raises an issue when an equality check is made against ``++numpy.nan++``. == Why is this an issue? The ``++numpy.nan++`` is a floating point representation of Not a Number (NaN) used as a placeholder for undefined or missing values in numerical computations. Equality checks of variables against ``++numpy.nan++`` in NumPy will always be ``++False++`` due to the special nature of ``++numpy.nan++``. This can lead to unexpected and incorrect results. Instead of standard comparison the ``++numpy.isnan()++`` function should be used. === Code examples ==== Noncompliant code example [source,python,diff-id=1,diff-type=noncompliant] ---- import numpy as np x = np.nan if x == np.nan: # Noncompliant: always False ... ---- ==== Compliant solution [source,python,diff-id=1,diff-type=compliant] ---- import numpy as np x = np.nan if np.isnan(x): ... ---- == Resources === Documentation * NumPy API Reference - https://numpy.org/doc/stable/reference/constants.html#numpy.nan[numpy.nan] * NumPy API Reference - https://numpy.org/doc/stable/reference/generated/numpy.isnan.html[numpy.isnan()] ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) === Message Use 'numpy.isnan()' function instead of direct comparison. ''' == Comments And Links (visible only on this page) endif::env-github,rspecator-view[]