15
15
16
16
class TestMultiIndexBasic :
17
17
def test_multiindex_perf_warn (self ):
18
-
19
18
df = DataFrame (
20
19
{
21
20
"jim" : [0 , 0 , 1 , 1 ],
@@ -47,7 +46,6 @@ def test_indexing_over_hashtable_size_cutoff(self):
47
46
_index ._SIZE_CUTOFF = old_cutoff
48
47
49
48
def test_multi_nan_indexing (self ):
50
-
51
49
# GH 3588
52
50
df = DataFrame (
53
51
{
@@ -70,6 +68,28 @@ def test_multi_nan_indexing(self):
70
68
)
71
69
tm .assert_frame_equal (result , expected )
72
70
71
+ def test_exclusive_nat_column_indexing (self ):
72
+ # GH 38025
73
+ # test multi indexing when one column exclusively contains NaT values
74
+ df = DataFrame (
75
+ {
76
+ "a" : [pd .NaT , pd .NaT , pd .NaT , pd .NaT ],
77
+ "b" : ["C1" , "C2" , "C3" , "C4" ],
78
+ "c" : [10 , 15 , np .nan , 20 ],
79
+ }
80
+ )
81
+ df = df .set_index (["a" , "b" ])
82
+ expected = DataFrame (
83
+ {
84
+ "c" : [10 , 15 , np .nan , 20 ],
85
+ },
86
+ index = [
87
+ Index ([pd .NaT , pd .NaT , pd .NaT , pd .NaT ], name = "a" ),
88
+ Index (["C1" , "C2" , "C3" , "C4" ], name = "b" ),
89
+ ],
90
+ )
91
+ tm .assert_frame_equal (df , expected )
92
+
73
93
def test_nested_tuples_duplicates (self ):
74
94
# GH#30892
75
95
0 commit comments