Skip to content

Commit

Permalink
Test Case: pd.DataFrame.prob with min_count changes dtype if result c…
Browse files Browse the repository at this point in the history
…ontains NaNs (pandas-dev#47170)
  • Loading branch information
Khor Chean Wei authored and yehoshuadimarsky committed Jul 13, 2022
1 parent b568848 commit f93fa32
Showing 1 changed file with 18 additions and 1 deletion.
19 changes: 18 additions & 1 deletion pandas/tests/frame/test_reductions.py
Original file line number Diff line number Diff line change
Expand Up @@ -789,12 +789,29 @@ def test_sum_nanops_min_count(self):
)
def test_sum_nanops_dtype_min_count(self, float_type, kwargs, expected_result):
# GH#46947
# pass
df = DataFrame({"a": [1.0, 2.3, 4.4], "b": [2.2, 3, np.nan]}, dtype=float_type)
result = df.sum(**kwargs)
expected = Series(expected_result).astype(float_type)
tm.assert_series_equal(result, expected)

@pytest.mark.parametrize("float_type", ["float16", "float32", "float64"])
@pytest.mark.parametrize(
"kwargs, expected_result",
[
({"axis": 1, "min_count": 2}, [2.0, 4.0, np.NaN]),
({"axis": 1, "min_count": 3}, [np.NaN, np.NaN, np.NaN]),
({"axis": 1, "skipna": False}, [2.0, 4.0, np.NaN]),
],
)
def test_prod_nanops_dtype_min_count(self, float_type, kwargs, expected_result):
# GH#46947
df = DataFrame(
{"a": [1.0, 2.0, 4.4], "b": [2.0, 2.0, np.nan]}, dtype=float_type
)
result = df.prod(**kwargs)
expected = Series(expected_result).astype(float_type)
tm.assert_series_equal(result, expected)

def test_sum_object(self, float_frame):
values = float_frame.values.astype(int)
frame = DataFrame(values, index=float_frame.index, columns=float_frame.columns)
Expand Down

0 comments on commit f93fa32

Please sign in to comment.