Skip to content
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

Melting with not present column does not produce error #23575

Merged
merged 34 commits into from
Nov 21, 2018
Merged
Changes from 2 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
855985d
check for columns in dataframe
michaelsilverstein Nov 8, 2018
40fdb05
check for columns in dataframe
michaelsilverstein Nov 8, 2018
9670da2
check difference with Index; use {} str formatting
michaelsilverstein Nov 13, 2018
3ffc870
missing.any()
michaelsilverstein Nov 13, 2018
8139f78
started test
michaelsilverstein Nov 13, 2018
0a94650
added to whatsnew
michaelsilverstein Nov 13, 2018
d0f6d23
PEP criteria
michaelsilverstein Nov 13, 2018
6c76161
`missing.empty` to accommodate MultiIndex
michaelsilverstein Nov 13, 2018
ad3d926
rm `*`
michaelsilverstein Nov 13, 2018
e097a87
rm comment
michaelsilverstein Nov 13, 2018
5ff3a32
add test for id_var and multiple missing
michaelsilverstein Nov 13, 2018
fcbda15
reformat error statement; Value->KeyError
michaelsilverstein Nov 13, 2018
3175b34
simplified test
michaelsilverstein Nov 13, 2018
515fb9f
Issue -> GH
michaelsilverstein Nov 13, 2018
c7d6fcf
PEP criteria
michaelsilverstein Nov 13, 2018
5911cc3
PEP criteria
michaelsilverstein Nov 13, 2018
47ca7fc
test not working now
michaelsilverstein Nov 13, 2018
d0ee9c5
regex compatible match
michaelsilverstein Nov 14, 2018
c75ab23
PEP criteria
michaelsilverstein Nov 14, 2018
32ed22c
move test to TestMelt() class
michaelsilverstein Nov 14, 2018
e629b2a
PEP
michaelsilverstein Nov 14, 2018
89de406
PEP
michaelsilverstein Nov 14, 2018
1d13f4a
PEP
michaelsilverstein Nov 14, 2018
479b761
Merge branch 'master' into dev_melt_column_check
michaelsilverstein Nov 14, 2018
01e8d74
resolving conflicts
michaelsilverstein Nov 15, 2018
6762b21
Merge branch 'master' of https://github.com/pandas-dev/pandas into de…
michaelsilverstein Nov 15, 2018
eae7716
Merge branch 'master' of https://github.com/pandas-dev/pandas into de…
michaelsilverstein Nov 15, 2018
fba641f
handle multiindex columns
michaelsilverstein Nov 15, 2018
06b7cdb
test single var melt with multiindex
michaelsilverstein Nov 15, 2018
39c746b
test single var melt with multiindex
michaelsilverstein Nov 15, 2018
af170e1
pep8 and index sorting
michaelsilverstein Nov 16, 2018
4c9bc9f
rm extra description
michaelsilverstein Nov 21, 2018
c59d29f
add comment
michaelsilverstein Nov 21, 2018
0db8838
add MI tests
michaelsilverstein Nov 21, 2018
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
9 changes: 9 additions & 0 deletions pandas/core/reshape/melt.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,11 @@ def melt(frame, id_vars=None, value_vars=None, var_name=None,
raise ValueError('id_vars must be a list of tuples when columns'
' are a MultiIndex')
else:
# Check that `id_vars` are in frame
id_vars = list(id_vars)
missing = [v for v in id_vars if v not in frame.columns]
michaelsilverstein marked this conversation as resolved.
Show resolved Hide resolved
if missing:
raise ValueError(f'Columns {missing} are not in dataframe')
michaelsilverstein marked this conversation as resolved.
Show resolved Hide resolved
else:
id_vars = []

Expand All @@ -45,6 +49,11 @@ def melt(frame, id_vars=None, value_vars=None, var_name=None,
' columns are a MultiIndex')
else:
value_vars = list(value_vars)
# Check that `value_vars` are in frame
missing = [v for v in value_vars if v not in frame.columns]
if missing:
# missing_vars = str(missing)
raise ValueError(f'Columns {missing} are not in dataframe')
frame = frame.loc[:, id_vars + value_vars]
else:
frame = frame.copy()
Expand Down