本文整理汇总了Python中pandas.util.testing.assert_frame_equal方法的典型用法代码示例。如果您正苦于以下问题:Python testing.assert_frame_equal方法的具体用法?Python testing.assert_frame_equal怎么用?Python testing.assert_frame_equal使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pandas.util.testing
的用法示例。
在下文中一共展示了testing.assert_frame_equal方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_rank_hits
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_rank_hits(self):
ranks = pd.DataFrame(
[
[1., 4., 1., 5., 7.],
[2., 6., 9., 2., 8.],
[2., 2., 6., 8., 4.]
],
index=['OTU_1', 'OTU_2', 'OTU_3'],
columns=['MS_1', 'MS_2', 'MS_3', 'MS_4', 'MS_5']
)
res = rank_hits(ranks, k=2)
exp = pd.DataFrame(
[
['OTU_1', 5., 'MS_4'],
['OTU_2', 8., 'MS_5'],
['OTU_3', 6., 'MS_3'],
['OTU_1', 7., 'MS_5'],
['OTU_2', 9., 'MS_3'],
['OTU_3', 8., 'MS_4']
], columns=['src', 'rank', 'dest'],
)
pdt.assert_frame_equal(res, exp)
示例2: test_dataframe_append_should_promote_string_column
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_dataframe_append_should_promote_string_column(library):
data = np.zeros((2,), dtype=[('A', 'i4'), ('B', 'f4'), ('C', 'a10')])
data[:] = [(1, 2., 'Hello'), (2, 3., "World")]
df = DataFrame(data, index=DatetimeIndex(np.array([dt(2013, 1, 1),
dt(2013, 1, 2)]).astype('datetime64[ns]'), name='DATETIME'))
data2 = np.zeros((1,), dtype=[('A', 'i4'), ('B', 'f4'), ('C', 'a30')])
data2[:] = [(3, 4., 'Hello World - Good Morning')]
df2 = DataFrame(data2, index=DatetimeIndex(np.array([dt(2013, 1, 3)]).astype('datetime64[ns]'), name='DATETIME'))
expected_data = np.zeros((3,), dtype=[('A', 'i4'), ('B', 'f4'), ('C', 'a30')])
expected_data[:] = [(1, 2., 'Hello'), (2, 3., "World"), (3, 4., 'Hello World - Good Morning')]
expected = DataFrame(expected_data, index=DatetimeIndex(np.array([dt(2013, 1, 1),
dt(2013, 1, 2),
dt(2013, 1, 3)]).astype('datetime64[ns]'), name='DATETIME'))
library.write('pandas', df)
library.append('pandas', df2)
actual = library.read('pandas').data
assert_frame_equal(expected, actual)
示例3: test_dataframe_append_should_add_new_column
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_dataframe_append_should_add_new_column(library):
data = np.zeros((2,), dtype=[('A', 'i4'), ('B', 'f4'), ('C', 'a10')])
data[:] = [(1, 2., 'Hello'), (2, 3., "World")]
df = DataFrame(data, index=DatetimeIndex(np.array([dt(2013, 1, 1),
dt(2013, 1, 2)]).astype('datetime64[ns]'), name='DATETIME'))
data2 = np.zeros((1,), dtype=[('A', 'i4'), ('B', 'f4'), ('C', 'a10'), ('D', 'f4')])
data2[:] = [(4, 5., 'Hi', 6.)]
df2 = DataFrame(data2, index=DatetimeIndex(np.array([dt(2013, 1, 3)]).astype('datetime64[ns]'), name='DATETIME'))
expected_data = np.zeros((3,), dtype=[('A', 'i4'), ('B', 'f4'), ('C', 'a10'), ('D', 'f4')])
expected_data[:] = [(1, 2., 'Hello', np.nan), (2, 3., "World", np.nan), (4, 5., 'Hi', 6.)]
expected = DataFrame(expected_data, index=DatetimeIndex(np.array([dt(2013, 1, 1),
dt(2013, 1, 2),
dt(2013, 1, 3)]).astype('datetime64[ns]'), name='DATETIME'))
library.write('pandas', df)
library.append('pandas', df2)
actual = library.read('pandas').data
assert_frame_equal(expected, actual)
示例4: test_dataframe_append_should_add_new_columns_and_reorder
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_dataframe_append_should_add_new_columns_and_reorder(library):
data = np.zeros((2,), dtype=[('A', 'i4'), ('B', 'f4'), ('C', 'a10')])
data[:] = [(1, 2., 'Hello'), (2, 3., "World")]
df = DataFrame(data, index=DatetimeIndex(np.array([dt(2013, 1, 1),
dt(2013, 1, 2)]).astype('datetime64[ns]'), name='DATETIME'))
data2 = np.zeros((1,), dtype=[('C', 'a10'), ('A', 'i4'), ('E', 'a1'), ('B', 'f4'), ('D', 'f4'), ('F', 'i4')])
data2[:] = [('Hi', 4, 'Y', 5., 6., 7)]
df2 = DataFrame(data2, index=DatetimeIndex(np.array([dt(2013, 1, 3)]).astype('datetime64[ns]'), name='DATETIME'))
expected_data = np.zeros((3,), dtype=[('C', 'a10'), ('A', 'i4'), ('E', 'a1'),
('B', 'f4'), ('D', 'f4'), ('F', 'i4')])
expected_data[:] = [('Hello', 1, '', 2., np.nan, 0), ("World", 2, '', 3., np.nan, 0), ('Hi', 4, 'Y', 5., 6., 7)]
expected = DataFrame(expected_data, index=DatetimeIndex(np.array([dt(2013, 1, 1),
dt(2013, 1, 2),
dt(2013, 1, 3)]).astype('datetime64[ns]'), name='DATETIME'))
library.write('pandas', df)
library.append('pandas', df2)
actual = library.read('pandas').data
assert_frame_equal(expected, actual)
# -- auto generated tests --- #
示例5: test_daterange_large_DataFrame_middle
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_daterange_large_DataFrame_middle(library):
df = DataFrame(index=date_range(dt(2001, 1, 1), freq='S', periods=30 * 1024),
data=np.tile(np.arange(30 * 1024), 100).reshape((-1, 100)))
df.columns = [str(c) for c in df.columns]
library.write('MYARR', df)
# middle
start = 100
for end in np.arange(200, 30000, 1000):
result = library.read('MYARR', date_range=DateRange(df.index[start], df.index[end])).data
assert_frame_equal(df[df.index[start]:df.index[end]], result, check_names=False)
# middle following
for start in np.arange(200, 30000, 1000):
for offset in (100, 300, 500):
end = start + offset
result = library.read('MYARR', date_range=DateRange(df.index[start], df.index[end])).data
assert_frame_equal(df[df.index[start]:df.index[end]], result, check_names=False)
示例6: assert_frame_equal
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def assert_frame_equal(self, left, right, *args, **kwargs):
tm.assert_index_equal(
left.columns, right.columns,
exact=kwargs.get('check_column_type', 'equiv'),
check_names=kwargs.get('check_names', True),
check_exact=kwargs.get('check_exact', False),
check_categorical=kwargs.get('check_categorical', True),
obj='{obj}.columns'.format(obj=kwargs.get('obj', 'DataFrame')))
jsons = (left.dtypes == 'json').index
for col in jsons:
self.assert_series_equal(left[col], right[col],
*args, **kwargs)
left = left.drop(columns=jsons)
right = right.drop(columns=jsons)
tm.assert_frame_equal(left, right, *args, **kwargs)
示例7: test_custom_asserts
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_custom_asserts(self):
# This would always trigger the KeyError from trying to put
# an array of equal-length UserDicts inside an ndarray.
data = JSONArray([collections.UserDict({'a': 1}),
collections.UserDict({'b': 2}),
collections.UserDict({'c': 3})])
a = pd.Series(data)
self.assert_series_equal(a, a)
self.assert_frame_equal(a.to_frame(), a.to_frame())
b = pd.Series(data.take([0, 0, 1]))
with pytest.raises(AssertionError):
self.assert_series_equal(a, b)
with pytest.raises(AssertionError):
self.assert_frame_equal(a.to_frame(), b.to_frame())
示例8: assert_frame_equal
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def assert_frame_equal(self, left, right, *args, **kwargs):
# TODO(EA): select_dtypes
tm.assert_index_equal(
left.columns, right.columns,
exact=kwargs.get('check_column_type', 'equiv'),
check_names=kwargs.get('check_names', True),
check_exact=kwargs.get('check_exact', False),
check_categorical=kwargs.get('check_categorical', True),
obj='{obj}.columns'.format(obj=kwargs.get('obj', 'DataFrame')))
decimals = (left.dtypes == 'decimal').index
for col in decimals:
self.assert_series_equal(left[col], right[col],
*args, **kwargs)
left = left.drop(columns=decimals)
right = right.drop(columns=decimals)
tm.assert_frame_equal(left, right, *args, **kwargs)
示例9: test_window_with_args
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_window_with_args(self):
# make sure that we are aggregating window functions correctly with arg
r = Series(np.random.randn(100)).rolling(window=10, min_periods=1,
win_type='gaussian')
expected = concat([r.mean(std=10), r.mean(std=.01)], axis=1)
expected.columns = ['<lambda>', '<lambda>']
result = r.aggregate([lambda x: x.mean(std=10),
lambda x: x.mean(std=.01)])
tm.assert_frame_equal(result, expected)
def a(x):
return x.mean(std=10)
def b(x):
return x.mean(std=0.01)
expected = concat([r.mean(std=10), r.mean(std=.01)], axis=1)
expected.columns = ['a', 'b']
result = r.aggregate([a, b])
tm.assert_frame_equal(result, expected)
示例10: test_rolling_axis
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_rolling_axis(self, axis_frame):
# see gh-23372.
df = DataFrame(np.ones((10, 20)))
axis = df._get_axis_number(axis_frame)
if axis == 0:
expected = DataFrame({
i: [np.nan] * 2 + [3.0] * 8
for i in range(20)
})
else:
# axis == 1
expected = DataFrame([
[np.nan] * 2 + [3.0] * 18
] * 10)
result = df.rolling(3, axis=axis_frame).sum()
tm.assert_frame_equal(result, expected)
示例11: test_rolling_apply_with_pandas_objects
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_rolling_apply_with_pandas_objects(self, window):
# 5071
df = pd.DataFrame({'A': np.random.randn(5),
'B': np.random.randint(0, 10, size=5)},
index=pd.date_range('20130101', periods=5, freq='s'))
# we have an equal spaced timeseries index
# so simulate removing the first period
def f(x):
if x.index[0] == df.index[0]:
return np.nan
return x.iloc[-1]
result = df.rolling(window).apply(f, raw=False)
expected = df.iloc[2:].reindex_like(df)
tm.assert_frame_equal(result, expected)
with pytest.raises(AttributeError):
df.rolling(window).apply(f, raw=True)
示例12: test_flex_binary_frame
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_flex_binary_frame(self, method):
series = self.frame[1]
res = getattr(series.rolling(window=10), method)(self.frame)
res2 = getattr(self.frame.rolling(window=10), method)(series)
exp = self.frame.apply(lambda x: getattr(
series.rolling(window=10), method)(x))
tm.assert_frame_equal(res, exp)
tm.assert_frame_equal(res2, exp)
frame2 = self.frame.copy()
frame2.values[:] = np.random.randn(*frame2.shape)
res3 = getattr(self.frame.rolling(window=10), method)(frame2)
exp = DataFrame({k: getattr(self.frame[k].rolling(
window=10), method)(frame2[k]) for k in self.frame})
tm.assert_frame_equal(res3, exp)
示例13: test_expanding_apply_args_kwargs
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_expanding_apply_args_kwargs(self, raw):
def mean_w_arg(x, const):
return np.mean(x) + const
df = DataFrame(np.random.rand(20, 3))
expected = df.expanding().apply(np.mean, raw=raw) + 20.
result = df.expanding().apply(mean_w_arg,
raw=raw,
args=(20, ))
tm.assert_frame_equal(result, expected)
result = df.expanding().apply(mean_w_arg,
raw=raw,
kwargs={'const': 20})
tm.assert_frame_equal(result, expected)
示例14: test_rolling_functions_window_non_shrinkage
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_rolling_functions_window_non_shrinkage(self, f):
# GH 7764
s = Series(range(4))
s_expected = Series(np.nan, index=s.index)
df = DataFrame([[1, 5], [3, 2], [3, 9], [-1, 0]], columns=['A', 'B'])
df_expected = DataFrame(np.nan, index=df.index, columns=df.columns)
try:
s_result = f(s)
tm.assert_series_equal(s_result, s_expected)
df_result = f(df)
tm.assert_frame_equal(df_result, df_expected)
except (ImportError):
# scipy needed for rolling_window
pytest.skip("scipy not available")
示例15: test_rolling_functions_window_non_shrinkage_binary
# 需要导入模块: from pandas.util import testing [as 别名]
# 或者: from pandas.util.testing import assert_frame_equal [as 别名]
def test_rolling_functions_window_non_shrinkage_binary(self):
# corr/cov return a MI DataFrame
df = DataFrame([[1, 5], [3, 2], [3, 9], [-1, 0]],
columns=Index(['A', 'B'], name='foo'),
index=Index(range(4), name='bar'))
df_expected = DataFrame(
columns=Index(['A', 'B'], name='foo'),
index=pd.MultiIndex.from_product([df.index, df.columns],
names=['bar', 'foo']),
dtype='float64')
functions = [lambda x: (x.rolling(window=10, min_periods=5)
.cov(x, pairwise=True)),
lambda x: (x.rolling(window=10, min_periods=5)
.corr(x, pairwise=True))]
for f in functions:
df_result = f(df)
tm.assert_frame_equal(df_result, df_expected)