Как добавить один элемент в массив numpy - PullRequest
1 голос
/ 28 марта 2020

Пожалуйста, извините, что у меня нет python знаний, я все еще учусь :)

Я искал в Интернете, чтобы попытаться найти ответ на этот вопрос. Я могу найти информацию о вставке всех значений в индексированную позицию, но не могу найти ничего о вставке отдельных элементов в указанной c точке . Я хочу просто добавить отдельный элемент в массив 2D , используя пока numpy.insert

, у меня есть этот код:

import numpy as np

# Initialise 2D Array
a = np.array([[0 for x in range(10)] for y in range(5)])

a = np.insert(a, 0, 1, axis=1)

print(a)

Вывод, который я получаю:

[[1 0 0 0 0 0 0 0 0 0 0]
 [1 0 0 0 0 0 0 0 0 0 0]
 [1 0 0 0 0 0 0 0 0 0 0]
 [1 0 0 0 0 0 0 0 0 0 0]
 [1 0 0 0 0 0 0 0 0 0 0]]

Вывод, который я пытаюсь достигнуть:

[[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 0 0]
 [0 0 0 0 0 0 0 0 0 0 0]
 [0 0 0 0 0 0 0 0 0 0 0]]

Я знаю, что это, вероятно, довольно простое решение для более опытных программистов. Если на этот вопрос уже ответили в другой ветке, ответьте по ссылке. :)

1 Ответ

0 голосов
/ 28 марта 2020

Попробуйте достичь нужного элемента, проиндексировав два измерения, например

import numpy as np

# Initialise 2D Array
a = np.array([[0 for x in range(10)] for y in range(5)])

a[0,0] = 1
a
[[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 0 0]
 [0 0 0 0 0 0 0 0 0 0 0]
 [0 0 0 0 0 0 0 0 0 0 0]]
...