[Numpy-discussion] reshaping arrays

Sudheer Joseph sudheer.joseph at yahoo.com
Mon Mar 4 09:43:06 EST 2013


Thanks a lot  Benjamin, 
 it did the trick. I have another question, I have  ocean section along latitude 0 ( equator) which is sampled at depths.

size of the array is 12x14 but this is just the index of the array I need to make a plot which shows depth value as one axis and longitude values as another axis. Is there a quick way to rescale the data to lat depth section by adding a new axis?
depth=[0,10,20,30,40,50,60,70,80,90,100,120]
lon=[ 40,  45,  50,  55,  60,  65,  70,  75,  80,  85,  90,  95, 100, 105]

In [20]: data.shape
Out[20]: (12, 14)
can you please advice me on what is the best way to re-scale the data to depth lat dimensions from the indices 1-12 and 1-14
With best regards,
Sudheer


From: Benjamin Root <ben.root at ou.edu>
To: Discussion of Numerical Python <numpy-discussion at scipy.org> 
Sent: Monday, 4 March 2013 7:40 PM
Subject: Re: [Numpy-discussion] reshaping arrays
 




On Sat, Mar 2, 2013 at 11:35 PM, Sudheer Joseph <sudheer.joseph at yahoo.com> wrote:

Hi Brad,
>                I am not getting the attribute reshape for the array, are you having a different version of numpy than mine?
>
>
>I have 
>In [55]: np.__version__
>Out[55]: '1.7.0'
>and detail of the shape
>
>
>details of variable 
>
>
>In [57]: ssh??
>Type:       NetCDFVariable
>String Form:<NetCDFVariable object at 0x492d3d8>
>Namespace:  Interactive
>Length:     75
>Docstring:  NetCDF Variable
>
>
>In [58]: ssh.shape
>Out[58]: (75, 140, 180)
>
>
>ssh??
>Type:       NetCDFVariable
>String Form:<NetCDFVariable object at 0x492d3d8>
>Namespace:  Interactive
>Length:     75
>Docstring:  NetCDF Variable
>
>
>In [66]: ssh.shape
>Out[66]: (75, 140, 180)
>
>
>In [67]: ssh.reshape(75,140*180)
>---------------------------------------------------------------------------
>AttributeError                            Traceback (most recent call last)
>/home/sjo/RAMA_20120807/adcp/<ipython-input-67-1a21dae1d18d> in <module>()
>----> 1 ssh.reshape(75,140*180)
>
>
>AttributeError: reshape
>
>
>

Ah, you have a NetCDF variable, which in many ways purposefully looks like a NumPy array, but isn't.  Just keep in mind that a NetCDF variable is merely a way to have the data available without actually reading it in until you need it.  If you do:

ssh_data = ssh[:]

Then the NetCDF variable will read all the data in the file and return it as a numpy array that can be manipulated as you wish.

I hope that helps!
Ben Root


_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion at scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20130304/2dbe5c5b/attachment.html>


More information about the NumPy-Discussion mailing list