Добавление значения в массив

#python #numpy-ndarray

#python #numpy-ndarray

Вопрос:

Я хочу добавить значения из одного массива в другой массив после выполнения некоторых вычислений, здесь я сделал это с помощью цикла for, но мне нужен эффективный способ сделать это. Пожалуйста, помогите мне .. спасибо

 from numpy import *

arr = array([1,2,3,4,5])

arr1 = []

for i in arr:

    arr1.append(i 5)
    
print(arr1)

nArray = array(arr1)

print(nArray)
  

Вывод :

[6, 7, 8, 9, 10]

[ 6 7 8 9 10]

Комментарии:

1. Просто сделайте arr1 = arr 5 . Numpy broadcasting позаботится обо всем остальном.

2. Спасибо Гилад Грин

Ответ №1:

Вы должны были просто сделать:

 nArray = arr   5
  

Ответ №2:

Вы могли бы использовать map встроенную функцию из Python, она принимает функцию и итерацию в качестве входных данных и возвращает что-то, что вы можете передать list функции, например:

 list(map(lambda x: x   5, arr))
  

Но это было бы для встроенного python list

Однако, поскольку вы используете numpy, вы можете просто добавить 5 в массив numpy arr1 = arr 5 , как это было предложено fountainhead

Комментарии:

1. Удалите первую часть. Это правильно, но неэффективно для numpy.

2. Спасибо Томасу Сент