Добавление элементов в массив numpy - PullRequest
0 голосов
/ 27 марта 2020

Я инициализировал numpy ый массив, как показано ниже

arr =  np.zeros((6, 6))

Этот пустой массив передается в качестве входного аргумента функции,

def fun(arr):
    arr.append(1) # this works for arr = [] initialization
    return arr

for  i in range(0,12):
     fun(arr) 

Но append не делает ' не работает для nd-массива. Я хочу заполнить элементы nd массива построчно. Есть ли способ использовать python скалярный индекс для массива nd? Я мог бы увеличивать этот индекс каждый раз при вызове fun и добавлять элементы к arr

Есть предложения?

1 Ответ

0 голосов
/ 27 марта 2020
In [523]: arr = np.zeros((6,6),int)                                                            
In [524]: arr                                                                                  
Out[524]: 
array([[0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0]])
In [525]: arr[0] = 1                                                                           
In [526]: arr                                                                                  
Out[526]: 
array([[1, 1, 1, 1, 1, 1],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0]])
In [527]: arr[1] = [1,2,3,4,5,6]                                                               
In [528]: arr[2,3:] = 2                                                                        
In [529]: arr                                                                                  
Out[529]: 
array([[1, 1, 1, 1, 1, 1],
       [1, 2, 3, 4, 5, 6],
       [0, 0, 0, 2, 2, 2],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0]])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...