@@ -913,6 +913,25 @@ def test_contains_not_nans(self):
913913 i = Float64Index ([1.0 , 2.0 , np .nan ])
914914 self .assertTrue (1.0 in i )
915915
916+ def test_doesnt_contain_all_the_things (self ):
917+ i = Float64Index ([np .nan ])
918+ self .assertFalse (i .isin ([0 ]).item ())
919+ self .assertFalse (i .isin ([1 ]).item ())
920+ self .assertTrue (i .isin ([np .nan ]).item ())
921+
922+ def test_nan_multiple_containment (self ):
923+ i = Float64Index ([1.0 , np .nan ])
924+ np .testing .assert_array_equal (i .isin ([1.0 ]), np .array ([True , False ]))
925+ np .testing .assert_array_equal (i .isin ([2.0 , np .pi ]),
926+ np .array ([False , False ]))
927+ np .testing .assert_array_equal (i .isin ([np .nan ]),
928+ np .array ([False , True ]))
929+ np .testing .assert_array_equal (i .isin ([1.0 , np .nan ]),
930+ np .array ([True , True ]))
931+ i = Float64Index ([1.0 , 2.0 ])
932+ np .testing .assert_array_equal (i .isin ([np .nan ]),
933+ np .array ([False , False ]))
934+
916935
917936class TestInt64Index (tm .TestCase ):
918937 _multiprocess_can_split_ = True
0 commit comments