On 2/7/07, Sven Schreiber <[EMAIL PROTECTED]> wrote: > Christopher Barker schrieb: > > Christian wrote: > >> when creating an ndarray from a list, how can I force the result to be > >> 2d *and* a column vector? So in case I pass a nested list, there will be no > >> modification of the shape and when I pass a simple list, it will be > >> converted to a 2d column vector. > > > > I'm not sure I understand the specification of the problem. I would > > think that the definition of a column vector is that it's shape is: > > > > (-1,1) > > > > So I think what's needed is: > > b = array(yourlist) > b.reshape(b.shape[0], -1) > > Now it seems I finally understood this business with the -1 in the > shapes... (well it's trivial if you have the book :-)
I'd like to know what the -1 means. But first I'm trying to figure out why there are two reshapes? Do they behave identically? The doc strings make it look like they might not. >> x = M.rand(3,3) >> x.reshape? Type: builtin_function_or_method Base Class: <type 'builtin_function_or_method'> String Form: <built-in method reshape of matrix object at 0xb4b41df4> Namespace: Interactive Docstring: a.reshape(d1, d2, ..., dn, order='c') Return a new array from this one. The new array must have the same number of elements as self. Also always returns a view or raises a ValueError if that is impossible.; >> M.reshape? Type: function Base Class: <type 'function'> String Form: <function reshape at 0xb776541c> Namespace: Interactive File: /usr/local/lib/python2.4/site-packages/numpy/core/fromnumeric.py Definition: M.reshape(a, newshape, order='C') Docstring: Return an array that uses the data of the given array, but with a new shape. :Parameters: - `a` : array - `newshape` : shape tuple or int The new shape should be compatible with the original shape. If an integer, then the result will be a 1D array of that length. - `order` : 'C' or 'FORTRAN', optional (default='C') Whether the array data should be viewed as in C (row-major) order or FORTRAN (column-major) order. :Returns: - `reshaped_array` : array This will be a new view object if possible; otherwise, it will return a copy. :See also: numpy.ndarray.reshape() is the equivalent method. _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion