Python - 向数组参数添加额外的行

时间:2018-05-01 10:05:30

标签: python arrays parameters

我需要修改函数的数组参数 添加一行0。

MNWE:

import numpy as np

def addrow(A):
    n,p = A.shape
    temp = np.zeros((n+1,p))
    temp[:n,:] = A
    A = temp

据我所知,最后一行将A定义为局部变量 但A[:,:]=temp因形状不匹配而引发错误。 没有在全局变量中转A的任何想法吗?

由于

1 个答案:

答案 0 :(得分:0)

这是你想要的吗?

>>> x = np.arange(12).reshape((4, 3))
>>> x
array([[ 0,  1,  2],
       [ 3,  4,  5],
       [ 6,  7,  8],
       [ 9, 10, 11]])
>>> shape = x.shape
>>> np.append(x, np.zeros(x.shape[1])).reshape(shape[0] + 1, shape[1])
array([[ 0.,  1.,  2.],
       [ 3.,  4.,  5.],
       [ 6.,  7.,  8.],
       [ 9., 10., 11.],
       [ 0.,  0.,  0.]])
>>>