done
This commit is contained in:
@ -0,0 +1,89 @@
|
||||
"""
|
||||
Tests for np.foo applied to DataFrame, not necessarily ufuncs.
|
||||
"""
|
||||
import numpy as np
|
||||
|
||||
from pandas import (
|
||||
Categorical,
|
||||
DataFrame,
|
||||
)
|
||||
import pandas._testing as tm
|
||||
|
||||
|
||||
class TestAsArray:
|
||||
def test_asarray_homogeneous(self):
|
||||
df = DataFrame({"A": Categorical([1, 2]), "B": Categorical([1, 2])})
|
||||
result = np.asarray(df)
|
||||
# may change from object in the future
|
||||
expected = np.array([[1, 1], [2, 2]], dtype="object")
|
||||
tm.assert_numpy_array_equal(result, expected)
|
||||
|
||||
def test_np_sqrt(self, float_frame):
|
||||
with np.errstate(all="ignore"):
|
||||
result = np.sqrt(float_frame)
|
||||
assert isinstance(result, type(float_frame))
|
||||
assert result.index.is_(float_frame.index)
|
||||
assert result.columns.is_(float_frame.columns)
|
||||
|
||||
tm.assert_frame_equal(result, float_frame.apply(np.sqrt))
|
||||
|
||||
def test_sum_deprecated_axis_behavior(self):
|
||||
# GH#52042 deprecated behavior of df.sum(axis=None), which gets
|
||||
# called when we do np.sum(df)
|
||||
|
||||
arr = np.random.default_rng(2).standard_normal((4, 3))
|
||||
df = DataFrame(arr)
|
||||
|
||||
msg = "The behavior of DataFrame.sum with axis=None is deprecated"
|
||||
with tm.assert_produces_warning(
|
||||
FutureWarning, match=msg, check_stacklevel=False
|
||||
):
|
||||
res = np.sum(df)
|
||||
|
||||
with tm.assert_produces_warning(FutureWarning, match=msg):
|
||||
expected = df.sum(axis=None)
|
||||
tm.assert_series_equal(res, expected)
|
||||
|
||||
def test_np_ravel(self):
|
||||
# GH26247
|
||||
arr = np.array(
|
||||
[
|
||||
[0.11197053, 0.44361564, -0.92589452],
|
||||
[0.05883648, -0.00948922, -0.26469934],
|
||||
]
|
||||
)
|
||||
|
||||
result = np.ravel([DataFrame(batch.reshape(1, 3)) for batch in arr])
|
||||
expected = np.array(
|
||||
[
|
||||
0.11197053,
|
||||
0.44361564,
|
||||
-0.92589452,
|
||||
0.05883648,
|
||||
-0.00948922,
|
||||
-0.26469934,
|
||||
]
|
||||
)
|
||||
tm.assert_numpy_array_equal(result, expected)
|
||||
|
||||
result = np.ravel(DataFrame(arr[0].reshape(1, 3), columns=["x1", "x2", "x3"]))
|
||||
expected = np.array([0.11197053, 0.44361564, -0.92589452])
|
||||
tm.assert_numpy_array_equal(result, expected)
|
||||
|
||||
result = np.ravel(
|
||||
[
|
||||
DataFrame(batch.reshape(1, 3), columns=["x1", "x2", "x3"])
|
||||
for batch in arr
|
||||
]
|
||||
)
|
||||
expected = np.array(
|
||||
[
|
||||
0.11197053,
|
||||
0.44361564,
|
||||
-0.92589452,
|
||||
0.05883648,
|
||||
-0.00948922,
|
||||
-0.26469934,
|
||||
]
|
||||
)
|
||||
tm.assert_numpy_array_equal(result, expected)
|
Reference in New Issue
Block a user