[Python] Concatenating empty array in Numpy

Discussão em 'Python' iniciado por Stack, Julho 4, 2025.

  1. Stack

    Stack Membro Participativo

    in Matlab I do this:

    >> E = [];
    >> A = [1 2 3 4 5; 10 20 30 40 50];
    >> E = [E ; A]

    E =

    1 2 3 4 5
    10 20 30 40 50


    Now I want the same thing in Numpy but I have problems, look at this:

    >>> E = array([],dtype=int)
    >>> E
    array([], dtype=int64)
    >>> A = array([[1,2,3,4,5],[10,20,30,40,50]])

    >>> E = vstack((E,A))
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/core/shape_base.py", line 226, in vstack
    return _nx.concatenate(map(atleast_2d,tup),0)
    ValueError: array dimensions must agree except for d_0


    I have a similar situation when I do this with:

    >>> E = concatenate((E,A),axis=0)
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    ValueError: arrays must have same number of dimensions


    Or:

    >>> E = append([E],[A],axis=0)
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/lib/function_base.py", line 3577, in append
    return concatenate((arr, values), axis=axis)
    ValueError: arrays must have same number of dimensions

    Continue reading...

Compartilhe esta Página