@@ -2263,10 +2263,6 @@ def test_constructor_overflow_int64(self):
2263
2263
df_crawls = DataFrame (data )
2264
2264
self .assert_ (df_crawls ['uid' ].dtype == object )
2265
2265
2266
- def test_is_mixed_type (self ):
2267
- self .assert_ (not self .frame ._is_mixed_type )
2268
- self .assert_ (self .mixed_frame ._is_mixed_type )
2269
-
2270
2266
def test_constructor_ordereddict (self ):
2271
2267
import random
2272
2268
nitems = 100
@@ -2319,6 +2315,19 @@ def test_constructor_dict(self):
2319
2315
frame = DataFrame ({'A' : [], 'B' : []}, columns = ['A' , 'B' ])
2320
2316
self .assert_ (frame .index .equals (Index ([])))
2321
2317
2318
+ def test_constructor_multi_index (self ):
2319
+ # GH 4078
2320
+ # construction error with mi and all-nan frame
2321
+ tuples = [(2 , 3 ), (3 , 3 ), (3 , 3 )]
2322
+ mi = MultiIndex .from_tuples (tuples )
2323
+ df = DataFrame (index = mi ,columns = mi )
2324
+ self .assert_ (pd .isnull (df ).values .ravel ().all ())
2325
+
2326
+ tuples = [(3 , 3 ), (2 , 3 ), (3 , 3 )]
2327
+ mi = MultiIndex .from_tuples (tuples )
2328
+ df = DataFrame (index = mi ,columns = mi )
2329
+ self .assert_ (pd .isnull (df ).values .ravel ().all ())
2330
+
2322
2331
def test_constructor_error_msgs (self ):
2323
2332
msg = "Mixing dicts with non-Series may lead to ambiguous ordering."
2324
2333
# mix dict and array, wrong size
@@ -9489,6 +9498,10 @@ def test_get_X_columns(self):
9489
9498
self .assert_ (np .array_equal (df ._get_numeric_data ().columns ,
9490
9499
['a' , 'b' , 'e' ]))
9491
9500
9501
+ def test_is_mixed_type (self ):
9502
+ self .assert_ (not self .frame ._is_mixed_type )
9503
+ self .assert_ (self .mixed_frame ._is_mixed_type )
9504
+
9492
9505
def test_get_numeric_data (self ):
9493
9506
intname = np .dtype (np .int_ ).name
9494
9507
floatname = np .dtype (np .float_ ).name
0 commit comments