-
-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Fix insertion of None value in MultiIndex #59069
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
Changes from 5 commits
efff668
fc8e053
385cb65
bea513e
62a038c
84859a2
766d28b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,7 @@ | |
import pandas as pd | ||
from pandas import ( | ||
DataFrame, | ||
Index, | ||
MultiIndex, | ||
Series, | ||
) | ||
|
@@ -288,6 +289,17 @@ def test_multiindex_with_na(self): | |
|
||
tm.assert_frame_equal(df, expected) | ||
|
||
def test_multiindex_insert_level_with_na(self): | ||
# GH 59003 | ||
indices = [["one"], ["a"], ["yes"]] | ||
df = DataFrame([0], index=indices).T | ||
df["one", None, "yes"] = 1 | ||
expected = DataFrame([1], index=Index(["yes"])).T | ||
tm.assert_frame_equal(df["one"][None], expected) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could you test this without doing a chained indexing? |
||
df["one", np.nan, "yes"] = 1 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can you use There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Cool! I tried to stay close to the reproducible code example in the linked issue, but it's really not necessary. Now the test case looks more concise and to the point. Thanks for the suggestions. |
||
expected = DataFrame([1], index=Index(["yes"])).T | ||
tm.assert_frame_equal(df["one"][np.nan], expected) | ||
|
||
|
||
class TestSorted: | ||
"""everything you wanted to test about sorting""" | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you construct this without
.T
?