Skip to content

ENH: Let initialisation from dicts use insertion order for python >= 3.6 (part I) #19830

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 23, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pandas/tests/frame/test_apply.py
Original file line number Diff line number Diff line change
Expand Up @@ -646,7 +646,7 @@ def test_infer_output_shape_columns(self):
'datetime': [pd.Timestamp('2017-11-29 03:30:00'),
pd.Timestamp('2017-11-29 03:45:00')]})
result = df.apply(lambda row: (row.number, row.string), axis=1)
expected = Series([t[2:] for t in df.itertuples()])
expected = Series([(t.number, t.string) for t in df.itertuples()])
assert_series_equal(result, expected)

def test_infer_output_shape_listlike_columns(self):
Expand Down
4 changes: 2 additions & 2 deletions pandas/tests/frame/test_block_internals.py
Original file line number Diff line number Diff line change
Expand Up @@ -405,8 +405,8 @@ def test_get_numeric_data(self):
result = df.get_dtype_counts()
expected = Series({'int64': 1, 'float64': 1,
datetime64name: 1, objectname: 1})
result.sort_index()
expected.sort_index()
result = result.sort_index()
expected = expected.sort_index()
assert_series_equal(result, expected)

df = DataFrame({'a': 1., 'b': 2, 'c': 'foo',
Expand Down
21 changes: 10 additions & 11 deletions pandas/tests/frame/test_constructors.py
Original file line number Diff line number Diff line change
Expand Up @@ -1362,9 +1362,8 @@ def test_constructor_with_datetimes(self):
expected['float64'] = 1
expected[floatname] = 1

result.sort_index()
expected = Series(expected)
expected.sort_index()
result = result.sort_index()
expected = Series(expected).sort_index()
tm.assert_series_equal(result, expected)

# check with ndarray construction ndim>0
Expand All @@ -1373,7 +1372,7 @@ def test_constructor_with_datetimes(self):
intname: np.array([1] * 10, dtype=intname)},
index=np.arange(10))
result = df.get_dtype_counts()
result.sort_index()
result = result.sort_index()
tm.assert_series_equal(result, expected)

# GH 2809
Expand All @@ -1384,8 +1383,8 @@ def test_constructor_with_datetimes(self):
df = DataFrame({'datetime_s': datetime_s})
result = df.get_dtype_counts()
expected = Series({datetime64name: 1})
result.sort_index()
expected.sort_index()
result = result.sort_index()
expected = expected.sort_index()
tm.assert_series_equal(result, expected)

# GH 2810
Expand All @@ -1395,8 +1394,8 @@ def test_constructor_with_datetimes(self):
df = DataFrame({'datetimes': datetimes, 'dates': dates})
result = df.get_dtype_counts()
expected = Series({datetime64name: 1, objectname: 1})
result.sort_index()
expected.sort_index()
result = result.sort_index()
expected = expected.sort_index()
tm.assert_series_equal(result, expected)

# GH 7594
Expand Down Expand Up @@ -1519,8 +1518,8 @@ def test_constructor_for_list_with_dtypes(self):
result = df.get_dtype_counts()
expected = Series(
{'int64': 1, 'float64': 2, datetime64name: 1, objectname: 1})
result.sort_index()
expected.sort_index()
result = result.sort_index()
expected = expected.sort_index()
tm.assert_series_equal(result, expected)

def test_constructor_frame_copy(self):
Expand Down Expand Up @@ -1832,7 +1831,7 @@ def test_from_records_misc_brokenness(self):
rows.append([datetime(2010, 1, 1), 1])
rows.append([datetime(2010, 1, 2), 1])
df2_obj = DataFrame.from_records(rows, columns=['date', 'test'])
results = df2_obj.get_dtype_counts()
results = df2_obj.get_dtype_counts().sort_index()
expected = Series({'datetime64[ns]': 1, 'int64': 1})
tm.assert_series_equal(results, expected)

Expand Down
4 changes: 2 additions & 2 deletions pandas/tests/frame/test_dtypes.py
Original file line number Diff line number Diff line change
Expand Up @@ -725,9 +725,9 @@ def test_timedeltas(self):
df = DataFrame(dict(A=Series(date_range('2012-1-1', periods=3,
freq='D')),
B=Series([timedelta(days=i) for i in range(3)])))
result = df.get_dtype_counts().sort_values()
result = df.get_dtype_counts().sort_index()
expected = Series(
{'datetime64[ns]': 1, 'timedelta64[ns]': 1}).sort_values()
{'datetime64[ns]': 1, 'timedelta64[ns]': 1}).sort_index()
assert_series_equal(result, expected)

df['C'] = df['A'] + df['B']
Expand Down
4 changes: 2 additions & 2 deletions pandas/tests/frame/test_indexing.py
Original file line number Diff line number Diff line change
Expand Up @@ -2430,8 +2430,8 @@ def _check_get(df, cond, check_dtypes=True):

# upcasting case (GH # 2794)
df = DataFrame(dict((c, Series([1] * 3, dtype=c))
for c in ['int64', 'int32',
'float32', 'float64']))
for c in ['float32', 'float64',
'int32', 'int64']))
df.iloc[1, :] = 0
result = df.where(df >= 0).get_dtype_counts()

Expand Down
12 changes: 6 additions & 6 deletions pandas/tests/frame/test_mutate_columns.py
Original file line number Diff line number Diff line change
Expand Up @@ -166,17 +166,17 @@ def test_insert(self):

# new item
df['x'] = df['a'].astype('float32')
result = Series(dict(float64=5, float32=1))
assert (df.get_dtype_counts() == result).all()
result = Series(dict(float32=1, float64=5))
assert (df.get_dtype_counts().sort_index() == result).all()

# replacing current (in different block)
df['a'] = df['a'].astype('float32')
result = Series(dict(float64=4, float32=2))
assert (df.get_dtype_counts() == result).all()
result = Series(dict(float32=2, float64=4))
assert (df.get_dtype_counts().sort_index() == result).all()

df['y'] = df['a'].astype('int32')
result = Series(dict(float64=4, float32=2, int32=1))
assert (df.get_dtype_counts() == result).all()
result = Series(dict(float32=2, float64=4, int32=1))
assert (df.get_dtype_counts().sort_index() == result).all()

with tm.assert_raises_regex(ValueError, 'already exists'):
df.insert(1, 'a', df['b'])
Expand Down
8 changes: 4 additions & 4 deletions pandas/tests/frame/test_nonunique_indexes.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,14 +155,14 @@ def check(result, expected=None):

# rename, GH 4403
df4 = DataFrame(
{'TClose': [22.02],
'RT': [0.0454],
{'RT': [0.0454],
'TClose': [22.02],
'TExg': [0.0422]},
index=MultiIndex.from_tuples([(600809, 20130331)],
names=['STK_ID', 'RPT_Date']))

df5 = DataFrame({'STK_ID': [600809] * 3,
'RPT_Date': [20120930, 20121231, 20130331],
df5 = DataFrame({'RPT_Date': [20120930, 20121231, 20130331],
'STK_ID': [600809] * 3,
'STK_Name': [u('饡驦'), u('饡驦'), u('饡驦')],
'TClose': [38.05, 41.66, 30.01]},
index=MultiIndex.from_tuples(
Expand Down
5 changes: 3 additions & 2 deletions pandas/tests/frame/test_reshape.py
Original file line number Diff line number Diff line change
Expand Up @@ -719,9 +719,10 @@ def verify(df):
assert_frame_equal(left, right)

# GH7401
df = pd.DataFrame({'A': list('aaaaabbbbb'), 'C': np.arange(10),
df = pd.DataFrame({'A': list('aaaaabbbbb'),
'B': (date_range('2012-01-01', periods=5)
.tolist() * 2)})
.tolist() * 2),
'C': np.arange(10)})

df.iloc[3, 1] = np.NaN
left = df.set_index(['A', 'B']).unstack()
Expand Down
6 changes: 3 additions & 3 deletions pandas/tests/frame/test_to_csv.py
Original file line number Diff line number Diff line change
Expand Up @@ -1054,10 +1054,10 @@ def test_to_csv_with_dst_transitions(self):

def test_to_csv_quoting(self):
df = DataFrame({
'c_string': ['a', 'b,c'],
'c_int': [42, np.nan],
'c_float': [1.0, 3.2],
'c_bool': [True, False],
'c_float': [1.0, 3.2],
'c_int': [42, np.nan],
'c_string': ['a', 'b,c'],
})

expected = """\
Expand Down