Numpy object array of numerical arrays

后端 未结 4 1064
一向
一向 2020-12-15 13:55

I want to create an array with dtype=np.object, where each element is an array with a numerical type, e.g int or float. For example:

>>>         


        
4条回答
  •  独厮守ぢ
    2020-12-15 14:30

    I can't find any elegant solution, but at least a more general solution to doing everything by hand is to declare a function of the form:

    def object_array(*args):
        array = np.empty(len(args), dtype=np.object)
        for i in range(len(args)):
            array[i] = args[i]
        return array
    

    I can then do:

    a = np.array([1,2,3])
    b = object_array(a,a,a)
    

    I then get:

    >>> a = np.array([1,2,3])
    >>> b = object_array(a,a,a)
    >>> print b.dtype
    object
    >>> print b.shape
    (3,)
    >>> print b[0].dtype
    int64
    

提交回复
热议问题