@@ -95,22 +95,24 @@ def test_multiindex_get_loc_list_raises(self):
95
95
96
96
def test_combine_first_with_nan_index ():
97
97
mi1 = pd .MultiIndex .from_arrays (
98
- [["b" , "b" , "c" , "a" , "b" , np .nan ], [1 , 2 , 3 , 4 , 5 , 6 ]],
99
- names = ["a" , "b" ]
98
+ [["b" , "b" , "c" , "a" , "b" , np .nan ], [1 , 2 , 3 , 4 , 5 , 6 ]], names = ["a" , "b" ]
100
99
)
101
100
df = pd .DataFrame ({"c" : [1 , 1 , 1 , 1 , 1 , 1 ]}, index = mi1 )
102
101
mi2 = pd .MultiIndex .from_arrays (
103
102
[["a" , "b" , "c" , "a" , "b" , "d" ], [1 , 1 , 1 , 1 , 1 , 1 ]], names = ["a" , "b" ]
104
103
)
105
104
s = pd .Series ([1 , 2 , 3 , 4 , 5 , 6 ], index = mi2 )
106
105
df_combined = df .combine_first (pd .DataFrame ({"col" : s }))
107
- mi_expected = pd .MultiIndex .from_arrays ([
108
- ["a" , "a" , "a" , "b" , "b" , "b" , "b" , "c" , "c" , "d" , np .nan ],
109
- [1 , 1 , 4 , 1 , 1 , 2 , 5 , 1 , 3 , 1 , 6 ]
110
- ], names = ["a" , "b" ])
106
+ mi_expected = pd .MultiIndex .from_arrays (
107
+ [
108
+ ["a" , "a" , "a" , "b" , "b" , "b" , "b" , "c" , "c" , "d" , np .nan ],
109
+ [1 , 1 , 4 , 1 , 1 , 2 , 5 , 1 , 3 , 1 , 6 ],
110
+ ],
111
+ names = ["a" , "b" ],
112
+ )
111
113
assert (df_combined .index == mi_expected ).all ()
112
114
exp_col = np .asarray (
113
115
[1.0 , 4.0 , np .nan , 2.0 , 5.0 , np .nan , np .nan , 3.0 , np .nan , 6.0 , np .nan ]
114
116
)
115
- act_col = df_combined [' col' ].values
117
+ act_col = df_combined [" col" ].values
116
118
assert np .allclose (act_col , exp_col , rtol = 0 , atol = 0 , equal_nan = True )
0 commit comments