Skip to content

Commit eb3134f

Browse files
committed
Merge pull request #2921 from jreback/ravel
ENH: change flatten to ravel (in internals/pytables)
2 parents 80ee11e + 3a0e838 commit eb3134f

File tree

4 files changed

+22
-8
lines changed

4 files changed

+22
-8
lines changed

pandas/core/internals.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -486,7 +486,7 @@ def where(self, other, cond, raise_on_error = True, try_cast = False):
486486

487487
# our where function
488488
def func(c,v,o):
489-
if c.flatten().all():
489+
if c.ravel().all():
490490
return v
491491

492492
try:
@@ -649,7 +649,7 @@ class ObjectBlock(Block):
649649
@property
650650
def is_bool(self):
651651
""" we can be a bool if we have only bool values but are of type object """
652-
return lib.is_bool_array(self.values.flatten())
652+
return lib.is_bool_array(self.values.ravel())
653653

654654
def convert(self, convert_dates = True, convert_numeric = True, copy = True):
655655
""" attempt to coerce any object types to better types
@@ -751,7 +751,7 @@ def make_block(values, items, ref_items):
751751

752752
# try to infer a datetimeblock
753753
if klass is None and np.prod(values.shape):
754-
flat = values.flatten()
754+
flat = values.ravel()
755755
inferred_type = lib.infer_dtype(flat)
756756
if inferred_type == 'datetime':
757757

pandas/io/pytables.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1088,7 +1088,7 @@ def set_atom(self, block, existing_col, min_itemsize, nan_rep, **kwargs):
10881088

10891089
self.values = list(block.items)
10901090
dtype = block.dtype.name
1091-
inferred_type = lib.infer_dtype(block.values.flatten())
1091+
inferred_type = lib.infer_dtype(block.values.ravel())
10921092

10931093
if inferred_type == 'datetime64':
10941094
self.set_atom_datetime64(block)
@@ -1116,7 +1116,7 @@ def set_atom_string(self, block, existing_col, min_itemsize, nan_rep):
11161116
data = block.fillna(nan_rep).values
11171117

11181118
# itemsize is the maximum length of a string (along any dimension)
1119-
itemsize = lib.max_len_string_array(data.flatten())
1119+
itemsize = lib.max_len_string_array(data.ravel())
11201120

11211121
# specified min_itemsize?
11221122
if isinstance(min_itemsize, dict):
@@ -1209,7 +1209,7 @@ def convert(self, values, nan_rep):
12091209
# convert nans
12101210
if self.kind == 'string':
12111211
self.data = lib.array_replace_from_nan_rep(
1212-
self.data.flatten(), nan_rep).reshape(self.data.shape)
1212+
self.data.ravel(), nan_rep).reshape(self.data.shape)
12131213
return self
12141214

12151215
def get_attr(self):
@@ -1628,7 +1628,7 @@ def write_array(self, key, value):
16281628
if value.dtype.type == np.object_:
16291629

16301630
# infer the type, warn if we have a non-string type here (for performance)
1631-
inferred_type = lib.infer_dtype(value.flatten())
1631+
inferred_type = lib.infer_dtype(value.ravel())
16321632
if empty_array:
16331633
pass
16341634
elif inferred_type == 'string':

pandas/stats/var.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,7 @@ def _forecast_cov_beta_raw(self, n):
342342

343343
for t in xrange(T + 1):
344344
index = t + p
345-
y = values.take(xrange(index, index - p, -1), axis=0).flatten()
345+
y = values.take(xrange(index, index - p, -1), axis=0).ravel()
346346
trans_Z = np.hstack(([1], y))
347347
trans_Z = trans_Z.reshape(1, len(trans_Z))
348348

vb_suite/io_bench.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,20 @@
4545
frame_to_csv = Benchmark("df.to_csv('__test__.csv')", setup,
4646
start_date=datetime(2011, 1, 1))
4747

48+
#----------------------------------
49+
setup = common_setup + """
50+
from pandas import concat, Timestamp
51+
52+
df_float = DataFrame(np.random.randn(1000, 30),dtype='float64')
53+
df_int = DataFrame(np.random.randn(1000, 30),dtype='int64')
54+
df_bool = DataFrame(True,index=df_float.index,columns=df_float.columns)
55+
df_object = DataFrame('foo',index=df_float.index,columns=df_float.columns)
56+
df_dt = DataFrame(Timestamp('20010101'),index=df_float.index,columns=df_float.columns)
57+
df = concat([ df_float, df_int, df_bool, df_object, df_dt ], axis=1)
58+
"""
59+
frame_to_csv_mixed = Benchmark("df.to_csv('__test__.csv')", setup,
60+
start_date=datetime(2012, 6, 1))
61+
4862
#----------------------------------------------------------------------
4963
# parse dates, ISO8601 format
5064

0 commit comments

Comments
 (0)