I think it has to be ``and`` in order to handle ``NaN``, which we want to interpret as False. Thoughts, @cpcloud?

    In [59]: np.nan & pd.notnull(np.nan)
    ---------------------------------------------------------------------------
    TypeError                                 Traceback (most recent call last)
    <ipython-input-59-47e0df96d143> in <module>()
    ----> 1 np.nan & pd.notnull(np.nan)

    TypeError: unsupported operand type(s) for &: 'float' and 'bool'