Python - добавление дополнительной строки к параметру массива - PullRequest
0 голосов
/ 01 мая 2018

Мне нужно изменить параметр массива функции добавить в него строку 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 голосов
/ 01 мая 2018

Это то, что вы хотите?

>>> 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.]])
>>>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...