Revision: 7159
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7159&view=rev
Author:   sameerd
Date:     2009-05-28 18:02:49 +0000 (Thu, 28 May 2009)

Log Message:
-----------
Updated the record array helper functions to create an empty record array where 
necessary

Modified Paths:
--------------
    trunk/matplotlib/lib/matplotlib/mlab.py

Modified: trunk/matplotlib/lib/matplotlib/mlab.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/mlab.py     2009-05-28 17:50:38 UTC (rev 
7158)
+++ trunk/matplotlib/lib/matplotlib/mlab.py     2009-05-28 18:02:49 UTC (rev 
7159)
@@ -2047,18 +2047,6 @@
     except TypeError: return False
     else: return b
 
-def rec_view(rec):
-    """
-    Return a view of an ndarray as a recarray
-
-    .. seealso::
-
-       
http://projects.scipy.org/pipermail/numpy-discussion/2008-August/036429.html
-          Motivation for this function
-    """
-    return rec.view(np.recarray)
-    #return rec.view(dtype=(np.record, rec.dtype), type=np.recarray)
-
 def rec_append_field(rec, name, arr, dtype=None):
     """
     Return a new record array with field name populated with data from
@@ -2094,12 +2082,12 @@
             raise ValueError, "dtypes must be None, a single dtype or a list"
 
     newdtype = np.dtype(rec.dtype.descr + zip(names, dtypes))
-    newrec = np.empty(rec.shape, dtype=newdtype)
+    newrec = np.recarray(rec.shape, dtype=newdtype)
     for field in rec.dtype.fields:
         newrec[field] = rec[field]
     for name, arr in zip(names, arrs):
         newrec[name] = arr
-    return rec_view(newrec)
+    return newrec
 
 
 def rec_drop_fields(rec, names):
@@ -2113,11 +2101,11 @@
     newdtype = np.dtype([(name, rec.dtype[name]) for name in rec.dtype.names
                        if name not in names])
 
-    newrec = np.empty(Nr, dtype=newdtype)
+    newrec = np.recarray(rec.shape, dtype=newdtype)
     for field in newdtype.names:
         newrec[field] = rec[field]
 
-    return rec_view(newrec)
+    return newrec
 
 
 
@@ -2279,7 +2267,7 @@
     r2desc = [(mapped_r2field(desc[0]), desc[1]) for desc in r2.dtype.descr if 
desc[0] not in key]
     newdtype = np.dtype(keydesc + r1desc + r2desc)
 
-    newrec = np.empty(common_len + left_len + right_len, dtype=newdtype)
+    newrec = np.recarray((common_len + left_len + right_len,), dtype=newdtype)
 
     if defaults is not None:
         for thiskey in defaults:
@@ -2314,7 +2302,7 @@
 
     newrec.sort(order=key)
 
-    return rec_view(newrec)
+    return newrec
 
 
 def csv2rec(fname, comments='#', skiprows=0, checkrows=0, delimiter=',',


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT 
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp as they present alongside digital heavyweights like Barbarian 
Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com 
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to