@@ -213,6 +213,11 @@ def test_dense_to_sparse(self):
213
213
assert_sp_series_equal (iseries , self .iseries , check_names = False )
214
214
self .assertEqual (iseries .name , self .bseries .name )
215
215
216
+ self .assertEqual (len (series ), len (bseries ))
217
+ self .assertEqual (len (series ), len (iseries ))
218
+ self .assertEqual (series .shape , bseries .shape )
219
+ self .assertEqual (series .shape , iseries .shape )
220
+
216
221
# non-NaN fill value
217
222
series = self .zbseries .to_dense ()
218
223
zbseries = series .to_sparse (kind = 'block' , fill_value = 0 )
@@ -221,6 +226,11 @@ def test_dense_to_sparse(self):
221
226
assert_sp_series_equal (ziseries , self .ziseries , check_names = False )
222
227
self .assertEqual (ziseries .name , self .zbseries .name )
223
228
229
+ self .assertEqual (len (series ), len (zbseries ))
230
+ self .assertEqual (len (series ), len (ziseries ))
231
+ self .assertEqual (series .shape , zbseries .shape )
232
+ self .assertEqual (series .shape , ziseries .shape )
233
+
224
234
def test_to_dense_preserve_name (self ):
225
235
assert (self .bseries .name is not None )
226
236
result = self .bseries .to_dense ()
@@ -271,12 +281,18 @@ def _check_const(sparse, name):
271
281
sp .sp_values [:5 ] = 97
272
282
self .assertEqual (values [0 ], 97 )
273
283
284
+ self .assertEqual (len (sp ), 20 )
285
+ self .assertEqual (sp .shape , (20 , ))
286
+
274
287
# but can make it copy!
275
288
sp = SparseSeries (values , sparse_index = self .bseries .sp_index ,
276
289
copy = True )
277
290
sp .sp_values [:5 ] = 100
278
291
self .assertEqual (values [0 ], 97 )
279
292
293
+ self .assertEqual (len (sp ), 20 )
294
+ self .assertEqual (sp .shape , (20 , ))
295
+
280
296
def test_constructor_scalar (self ):
281
297
data = 5
282
298
sp = SparseSeries (data , np .arange (100 ))
@@ -286,6 +302,8 @@ def test_constructor_scalar(self):
286
302
287
303
data = np .nan
288
304
sp = SparseSeries (data , np .arange (100 ))
305
+ self .assertEqual (len (sp ), 100 )
306
+ self .assertEqual (sp .shape , (100 , ))
289
307
290
308
def test_constructor_ndarray (self ):
291
309
pass
@@ -294,11 +312,14 @@ def test_constructor_nonnan(self):
294
312
arr = [0 , 0 , 0 , nan , nan ]
295
313
sp_series = SparseSeries (arr , fill_value = 0 )
296
314
assert_equal (sp_series .values .values , arr )
315
+ self .assertEqual (len (sp_series ), 5 )
316
+ self .assertEqual (sp_series .shape , (5 , ))
297
317
298
318
# GH 9272
299
319
def test_constructor_empty (self ):
300
320
sp = SparseSeries ()
301
321
self .assertEqual (len (sp .index ), 0 )
322
+ self .assertEqual (sp .shape , (0 , ))
302
323
303
324
def test_copy_astype (self ):
304
325
cop = self .bseries .astype (np .float64 )
@@ -328,6 +349,18 @@ def test_copy_astype(self):
328
349
view .sp_values [:5 ] = 5
329
350
self .assertTrue ((self .bseries .sp_values [:5 ] == 5 ).all ())
330
351
352
+ def test_shape (self ):
353
+ # GH 10452
354
+ self .assertEqual (self .bseries .shape , (20 , ))
355
+ self .assertEqual (self .btseries .shape , (20 , ))
356
+ self .assertEqual (self .iseries .shape , (20 , ))
357
+
358
+ self .assertEqual (self .bseries2 .shape , (15 , ))
359
+ self .assertEqual (self .iseries2 .shape , (15 , ))
360
+
361
+ self .assertEqual (self .zbseries2 .shape , (15 , ))
362
+ self .assertEqual (self .ziseries2 .shape , (15 , ))
363
+
331
364
def test_astype (self ):
332
365
self .assertRaises (Exception , self .bseries .astype , np .int64 )
333
366
@@ -1090,6 +1123,13 @@ def test_dtypes(self):
1090
1123
expected = Series ({'float64' : 4 })
1091
1124
assert_series_equal (result , expected )
1092
1125
1126
+ def test_shape (self ):
1127
+ # GH 10452
1128
+ self .assertEqual (self .frame .shape , (10 , 4 ))
1129
+ self .assertEqual (self .iframe .shape , (10 , 4 ))
1130
+ self .assertEqual (self .zframe .shape , (10 , 4 ))
1131
+ self .assertEqual (self .fill_frame .shape , (10 , 4 ))
1132
+
1093
1133
def test_str (self ):
1094
1134
df = DataFrame (np .random .randn (10000 , 4 ))
1095
1135
df .ix [:9998 ] = np .nan
0 commit comments