Skip to content

Commit aae91f7

Browse files
committed
TST: Check series names
1 parent 7516ec7 commit aae91f7

21 files changed

+312
-214
lines changed

pandas/computation/tests/test_eval.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -1207,7 +1207,9 @@ def f():
12071207
a = 1
12081208
old_a = df.a.copy()
12091209
df.eval('a = a + b')
1210-
assert_series_equal(old_a + df.b, df.a)
1210+
result = old_a + df.b
1211+
assert_series_equal(result, df.a, check_names=False)
1212+
self.assertTrue(result.name is None)
12111213

12121214
f()
12131215

@@ -1251,7 +1253,7 @@ def test_date_boolean(self):
12511253
res = self.eval('df.dates1 < 20130101', local_dict={'df': df},
12521254
engine=self.engine, parser=self.parser)
12531255
expec = df.dates1 < '20130101'
1254-
assert_series_equal(res, expec)
1256+
assert_series_equal(res, expec, check_names=False)
12551257

12561258
def test_simple_in_ops(self):
12571259
if self.parser != 'python':

pandas/io/tests/test_json/test_pandas.py

+5-6
Original file line numberDiff line numberDiff line change
@@ -409,12 +409,10 @@ def _check_orient(series, orient, dtype=None, numpy=False):
409409
if orient == "records" or orient == "values":
410410
assert_almost_equal(series.values, unser.values)
411411
else:
412-
try:
413-
assert_series_equal(series, unser)
414-
except:
415-
raise
416412
if orient == "split":
417-
self.assertEqual(series.name, unser.name)
413+
assert_series_equal(series, unser)
414+
else:
415+
assert_series_equal(series, unser, check_names=False)
418416

419417
def _check_all_orients(series, dtype=None):
420418
_check_orient(series, "columns", dtype=dtype)
@@ -491,7 +489,8 @@ def test_axis_dates(self):
491489
# series
492490
json = self.ts.to_json()
493491
result = read_json(json, typ='series')
494-
assert_series_equal(result, self.ts)
492+
assert_series_equal(result, self.ts, check_names=False)
493+
self.assertTrue(result.name is None)
495494

496495
def test_convert_dates(self):
497496

pandas/io/tests/test_parsers.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,8 @@ def test_squeeze(self):
272272
b,2
273273
c,3
274274
"""
275-
expected = Series([1, 2, 3], index=Index(['a', 'b', 'c'], name=0))
275+
idx = Index(['a', 'b', 'c'], name=0)
276+
expected = Series([1, 2, 3], name=1, index=idx)
276277
result = self.read_table(StringIO(data), sep=',', index_col=0,
277278
header=None, squeeze=True)
278279
tm.assert_isinstance(result, Series)
@@ -2638,7 +2639,7 @@ def test_iteration_open_handle(self):
26382639
result = read_table(f, squeeze=True, header=None,
26392640
engine='python')
26402641

2641-
expected = Series(['DDD', 'EEE', 'FFF', 'GGG'])
2642+
expected = Series(['DDD', 'EEE', 'FFF', 'GGG'], name=0)
26422643
tm.assert_series_equal(result, expected)
26432644

26442645
def test_iterator(self):

pandas/io/tests/test_sql.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1256,7 +1256,7 @@ def test_transactions(self):
12561256
self._transaction_test()
12571257

12581258
def test_get_schema_create_table(self):
1259-
# Use a dataframe without a bool column, since MySQL converts bool to
1259+
# Use a dataframe without a bool column, since MySQL converts bool to
12601260
# TINYINT (which read_sql_table returns as an int and causes a dtype
12611261
# mismatch)
12621262

@@ -2025,7 +2025,7 @@ def test_tquery(self):
20252025
frame = tm.makeTimeDataFrame()
20262026
sql.write_frame(frame, name='test_table', con=self.db)
20272027
result = sql.tquery("select A from test_table", self.db)
2028-
expected = Series(frame.A, frame.index) # not to have name
2028+
expected = Series(frame.A.values, frame.index) # not to have name
20292029
result = Series(result, frame.index)
20302030
tm.assert_series_equal(result, expected)
20312031

@@ -2370,7 +2370,7 @@ def test_tquery(self):
23702370
cur.execute(drop_sql)
23712371
sql.write_frame(frame, name='test_table', con=self.db, flavor='mysql')
23722372
result = sql.tquery("select A from test_table", self.db)
2373-
expected = Series(frame.A, frame.index) # not to have name
2373+
expected = Series(frame.A.values, frame.index) # not to have name
23742374
result = Series(result, frame.index)
23752375
tm.assert_series_equal(result, expected)
23762376

pandas/sparse/tests/test_sparse.py

+19-14
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
dec = np.testing.dec
1313

1414
from pandas.util.testing import (assert_almost_equal, assert_series_equal,
15-
assert_frame_equal, assert_panel_equal, assertRaisesRegexp, assert_array_equal)
15+
assert_frame_equal, assert_panel_equal, assertRaisesRegexp,
16+
assert_array_equal, assert_attr_equal)
1617
from numpy.testing import assert_equal
1718

1819
from pandas import Series, DataFrame, bdate_range, Panel, MultiIndex
@@ -76,9 +77,11 @@ def _test_data2_zero():
7677
return arr, index
7778

7879

79-
def assert_sp_series_equal(a, b, exact_indices=True):
80+
def assert_sp_series_equal(a, b, exact_indices=True, check_names=True):
8081
assert(a.index.equals(b.index))
8182
assert_sp_array_equal(a, b)
83+
if check_names:
84+
assert_attr_equal('name', a, b)
8285

8386

8487
def assert_sp_frame_equal(left, right, exact_indices=True):
@@ -130,7 +133,6 @@ def setUp(self):
130133

131134
self.bseries = SparseSeries(arr, index=index, kind='block',
132135
name='bseries')
133-
134136
self.ts = self.bseries
135137

136138
self.btseries = SparseSeries(arr, index=date_index, kind='block')
@@ -168,10 +170,10 @@ def test_construct_DataFrame_with_sp_series(self):
168170
df.dtypes
169171
str(df)
170172

171-
assert_sp_series_equal(df['col'], self.bseries)
173+
assert_sp_series_equal(df['col'], self.bseries, check_names=False)
172174

173175
result = df.iloc[:, 0]
174-
assert_sp_series_equal(result, self.bseries)
176+
assert_sp_series_equal(result, self.bseries, check_names=False)
175177

176178
# blocking
177179
expected = Series({'col': 'float64:sparse'})
@@ -209,14 +211,16 @@ def test_dense_to_sparse(self):
209211
bseries = series.to_sparse(kind='block')
210212
iseries = series.to_sparse(kind='integer')
211213
assert_sp_series_equal(bseries, self.bseries)
212-
assert_sp_series_equal(iseries, self.iseries)
214+
assert_sp_series_equal(iseries, self.iseries, check_names=False)
215+
self.assertEqual(iseries.name, self.bseries.name)
213216

214217
# non-NaN fill value
215218
series = self.zbseries.to_dense()
216219
zbseries = series.to_sparse(kind='block', fill_value=0)
217220
ziseries = series.to_sparse(kind='integer', fill_value=0)
218221
assert_sp_series_equal(zbseries, self.zbseries)
219-
assert_sp_series_equal(ziseries, self.ziseries)
222+
assert_sp_series_equal(ziseries, self.ziseries, check_names=False)
223+
self.assertEqual(ziseries.name, self.zbseries.name)
220224

221225
def test_to_dense_preserve_name(self):
222226
assert(self.bseries.name is not None)
@@ -244,7 +248,7 @@ def _check_const(sparse, name):
244248

245249
# use passed name
246250
result = SparseSeries(sparse, name='x')
247-
assert_sp_series_equal(result, sparse)
251+
assert_sp_series_equal(result, sparse, check_names=False)
248252
self.assertEqual(result.name, 'x')
249253

250254
_check_const(self.bseries, 'bseries')
@@ -1301,7 +1305,7 @@ def _check_frame(frame):
13011305
# insert SparseSeries
13021306
frame['E'] = frame['A']
13031307
tm.assert_isinstance(frame['E'], SparseSeries)
1304-
assert_sp_series_equal(frame['E'], frame['A'])
1308+
assert_sp_series_equal(frame['E'], frame['A'], check_names=False)
13051309

13061310
# insert SparseSeries differently-indexed
13071311
to_insert = frame['A'][::2]
@@ -1315,13 +1319,14 @@ def _check_frame(frame):
13151319
# insert Series
13161320
frame['F'] = frame['A'].to_dense()
13171321
tm.assert_isinstance(frame['F'], SparseSeries)
1318-
assert_sp_series_equal(frame['F'], frame['A'])
1322+
assert_sp_series_equal(frame['F'], frame['A'], check_names=False)
13191323

13201324
# insert Series differently-indexed
13211325
to_insert = frame['A'].to_dense()[::2]
13221326
frame['G'] = to_insert
13231327
expected = to_insert.reindex(
13241328
frame.index).fillna(frame.default_fill_value)
1329+
expected.name = 'G'
13251330
assert_series_equal(frame['G'].to_dense(), expected)
13261331

13271332
# insert ndarray
@@ -1349,18 +1354,18 @@ def _check_frame(frame):
13491354

13501355
def test_setitem_corner(self):
13511356
self.frame['a'] = self.frame['B']
1352-
assert_sp_series_equal(self.frame['a'], self.frame['B'])
1357+
assert_sp_series_equal(self.frame['a'], self.frame['B'], check_names=False)
13531358

13541359
def test_setitem_array(self):
13551360
arr = self.frame['B']
13561361

13571362
self.frame['E'] = arr
1358-
assert_sp_series_equal(self.frame['E'], self.frame['B'])
1363+
assert_sp_series_equal(self.frame['E'], self.frame['B'], check_names=False)
13591364

13601365
self.frame['F'] = arr[:-1]
13611366
index = self.frame.index[:-1]
1362-
assert_sp_series_equal(
1363-
self.frame['E'].reindex(index), self.frame['F'].reindex(index))
1367+
assert_sp_series_equal(self.frame['E'].reindex(index),
1368+
self.frame['F'].reindex(index), check_names=False)
13641369

13651370
def test_delitem(self):
13661371
A = self.frame['A']

pandas/tests/test_categorical.py

+39-29
Original file line numberDiff line numberDiff line change
@@ -1233,7 +1233,7 @@ def test_codes_dtypes(self):
12331233
def test_basic(self):
12341234

12351235
# test basic creation / coercion of categoricals
1236-
s = Series(self.factor,name='A')
1236+
s = Series(self.factor, name='A')
12371237
self.assertEqual(s.dtype,'category')
12381238
self.assertEqual(len(s),len(self.factor))
12391239
str(s.values)
@@ -1260,8 +1260,9 @@ def test_basic(self):
12601260
df = DataFrame({'A' : s, 'B' : s, 'C' : 1})
12611261
result1 = df['A']
12621262
result2 = df['B']
1263-
tm.assert_series_equal(result1,s)
1264-
tm.assert_series_equal(result2,s)
1263+
tm.assert_series_equal(result1, s)
1264+
tm.assert_series_equal(result2, s, check_names=False)
1265+
self.assertEqual(result2.name, 'B')
12651266
self.assertEqual(len(df),len(self.factor))
12661267
str(df.values)
12671268
str(df)
@@ -1344,23 +1345,23 @@ def test_construction_frame(self):
13441345
# GH8626
13451346

13461347
# dict creation
1347-
df = DataFrame({ 'A' : list('abc') },dtype='category')
1348-
expected = Series(list('abc'),dtype='category')
1349-
tm.assert_series_equal(df['A'],expected)
1348+
df = DataFrame({ 'A' : list('abc') }, dtype='category')
1349+
expected = Series(list('abc'), dtype='category', name='A')
1350+
tm.assert_series_equal(df['A'], expected)
13501351

13511352
# to_frame
1352-
s = Series(list('abc'),dtype='category')
1353+
s = Series(list('abc'), dtype='category')
13531354
result = s.to_frame()
1354-
expected = Series(list('abc'),dtype='category')
1355-
tm.assert_series_equal(result[0],expected)
1355+
expected = Series(list('abc'), dtype='category', name=0)
1356+
tm.assert_series_equal(result[0], expected)
13561357
result = s.to_frame(name='foo')
1357-
expected = Series(list('abc'),dtype='category')
1358-
tm.assert_series_equal(result['foo'],expected)
1358+
expected = Series(list('abc'), dtype='category', name='foo')
1359+
tm.assert_series_equal(result['foo'], expected)
13591360

13601361
# list-like creation
1361-
df = DataFrame(list('abc'),dtype='category')
1362-
expected = Series(list('abc'),dtype='category')
1363-
tm.assert_series_equal(df[0],expected)
1362+
df = DataFrame(list('abc'), dtype='category')
1363+
expected = Series(list('abc'), dtype='category', name=0)
1364+
tm.assert_series_equal(df[0], expected)
13641365

13651366
# ndim != 1
13661367
df = DataFrame([pd.Categorical(list('abc'))])
@@ -1833,7 +1834,11 @@ def f(x):
18331834
# Monotonic
18341835
df = DataFrame({"a": [5, 15, 25]})
18351836
c = pd.cut(df.a, bins=[0,10,20,30,40])
1836-
tm.assert_series_equal(df.a.groupby(c).transform(sum), df['a'])
1837+
1838+
result = df.a.groupby(c).transform(sum)
1839+
tm.assert_series_equal(result, df['a'], check_names=False)
1840+
self.assertTrue(result.name is None)
1841+
18371842
tm.assert_series_equal(df.a.groupby(c).transform(lambda xs: np.sum(xs)), df['a'])
18381843
tm.assert_frame_equal(df.groupby(c).transform(sum), df[['a']])
18391844
tm.assert_frame_equal(df.groupby(c).transform(lambda xs: np.max(xs)), df[['a']])
@@ -1845,7 +1850,11 @@ def f(x):
18451850
# Non-monotonic
18461851
df = DataFrame({"a": [5, 15, 25, -5]})
18471852
c = pd.cut(df.a, bins=[-10, 0,10,20,30,40])
1848-
tm.assert_series_equal(df.a.groupby(c).transform(sum), df['a'])
1853+
1854+
result = df.a.groupby(c).transform(sum)
1855+
tm.assert_series_equal(result, df['a'], check_names=False)
1856+
self.assertTrue(result.name is None)
1857+
18491858
tm.assert_series_equal(df.a.groupby(c).transform(lambda xs: np.sum(xs)), df['a'])
18501859
tm.assert_frame_equal(df.groupby(c).transform(sum), df[['a']])
18511860
tm.assert_frame_equal(df.groupby(c).transform(lambda xs: np.sum(xs)), df[['a']])
@@ -1983,19 +1992,19 @@ def test_slicing(self):
19831992
df = DataFrame({'value': (np.arange(100)+1).astype('int64')})
19841993
df['D'] = pd.cut(df.value, bins=[0,25,50,75,100])
19851994

1986-
expected = Series([11,'(0, 25]'],index=['value','D'])
1995+
expected = Series([11,'(0, 25]'], index=['value','D'], name=10)
19871996
result = df.iloc[10]
1988-
tm.assert_series_equal(result,expected)
1997+
tm.assert_series_equal(result, expected)
19891998

19901999
expected = DataFrame({'value': np.arange(11,21).astype('int64')},
19912000
index=np.arange(10,20).astype('int64'))
19922001
expected['D'] = pd.cut(expected.value, bins=[0,25,50,75,100])
19932002
result = df.iloc[10:20]
1994-
tm.assert_frame_equal(result,expected)
2003+
tm.assert_frame_equal(result, expected)
19952004

1996-
expected = Series([9,'(0, 25]'],index=['value','D'])
2005+
expected = Series([9,'(0, 25]'],index=['value', 'D'], name=8)
19972006
result = df.loc[8]
1998-
tm.assert_series_equal(result,expected)
2007+
tm.assert_series_equal(result, expected)
19992008

20002009
def test_slicing_and_getting_ops(self):
20012010

@@ -2151,7 +2160,8 @@ def test_slicing_doc_examples(self):
21512160
tm.assert_series_equal(result, expected)
21522161

21532162
result = df.loc["h":"j","cats"]
2154-
expected = Series(Categorical(['a','b','b'],categories=['a','b','c']),index=['h','i','j'])
2163+
expected = Series(Categorical(['a','b','b'], name='cats',
2164+
categories=['a','b','c']), index=['h','i','j'])
21552165
tm.assert_series_equal(result, expected)
21562166

21572167
result = df.ix["h":"j",0:1]
@@ -2832,21 +2842,21 @@ def test_to_records(self):
28322842
# GH8626
28332843

28342844
# dict creation
2835-
df = DataFrame({ 'A' : list('abc') },dtype='category')
2836-
expected = Series(list('abc'),dtype='category')
2837-
tm.assert_series_equal(df['A'],expected)
2845+
df = DataFrame({ 'A' : list('abc') }, dtype='category')
2846+
expected = Series(list('abc'), dtype='category', name='A')
2847+
tm.assert_series_equal(df['A'], expected)
28382848

28392849
# list-like creation
2840-
df = DataFrame(list('abc'),dtype='category')
2841-
expected = Series(list('abc'),dtype='category')
2842-
tm.assert_series_equal(df[0],expected)
2850+
df = DataFrame(list('abc'), dtype='category')
2851+
expected = Series(list('abc'), dtype='category', name=0)
2852+
tm.assert_series_equal(df[0], expected)
28432853

28442854
# to record array
28452855
# this coerces
28462856
result = df.to_records()
28472857
expected = np.rec.array([(0, 'a'), (1, 'b'), (2, 'c')],
28482858
dtype=[('index', '<i8'), ('0', 'O')])
2849-
tm.assert_almost_equal(result,expected)
2859+
tm.assert_almost_equal(result, expected)
28502860

28512861
def test_numeric_like_ops(self):
28522862

0 commit comments

Comments
 (0)