Exemple #1
0
def test_modes_with_nans():
    # GH39007
    values = np.array([True, pd.NA, np.nan], dtype=np.object_)
    # pd.Na and np.nan will have the same representative: np.nan
    # thus we have 2 nans and 1 True
    modes = ht.mode(values, False)
    assert modes.size == 1
    assert np.isnan(modes[0])
Exemple #2
0
 def test_mode(self, dtype, writable):
     if dtype in (np.int8, np.uint8):
         N = 53
     else:
         N = 11111
     values = np.repeat(np.arange(N).astype(dtype), 5)
     values[0] = 42
     values.flags.writeable = writable
     result = ht.mode(values, False)
     assert result == 42
Exemple #3
0
 def test_mode(self, dtype):
     values = np.array([42, np.nan, np.nan, np.nan], dtype=dtype)
     assert ht.mode(values, True) == 42
     assert np.isnan(ht.mode(values, False))
Exemple #4
0
def test_modes_with_nans():
    # GH42688, nans aren't mangled
    nulls = [pd.NA, np.nan, pd.NaT, None]
    values = np.array([True] + nulls * 2, dtype=np.object_)
    modes = ht.mode(values, False)
    assert modes.size == len(nulls)
Exemple #5
0
 def test_mode_stable(self, dtype, writable):
     values = np.array([2, 1, 5, 22, 3, -1, 8]).astype(dtype)
     values.flags.writeable = writable
     keys = ht.mode(values, False)
     tm.assert_numpy_array_equal(keys, values)