On 3/5/2007 2:13 PM, David Koch wrote: > - Am I correct in assuming that all arrays have to be initialized to > their final number of elements in NumPy (using empty/zero for instance)?
You can also create an array from a Python list, data in a file, another array or a memory mapping. In these cases you don't need to know the size of the array in advance. But once created you cannot append elements to a NumPy array as you can with a Python list. NumPy arrays never call realloc due to the complication from view arrays. > - Given a matrix R, is there an equvialent to the Matlab operation > R(:,j) = [] (which removes column j and "shrinks" the matrix? Matlab does not have view arrays and no regard for memory consumption or fragmentation, so it can make a copy behind the scenes. In NumPy you have to be more explicit about what is done. def remove_column(a,j): idx = arange(0,a.shape[1]) idx = idx[idx != j] return a[:,idx] > - For (basic ?) indexing of an ndarray - is there any reason to prefer > A[i,j] over A[i][j]? The latter involves two function calls and creation of an intermediate object (a view array). > - Is it "pythonic" to initialize vectors to 2 dimensions so that > vec.shape == (len(vec), 1) instead of vec.shape == (len(vec),)? I have no idea. S.M. _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion