Как я могу добавить только первые элементы массива в python?

#python #arrays #list #numpy #add

Вопрос:

Если у меня есть массив, например: a = np.массив([[1,2], [2,5], [4,8]]), где первая цифра представляет значение x, а вторая-значение y, как я могу добавить все первые цифры (значения x) и все вторые цифры (значения y). Результат должен выглядеть примерно так: 7, 15 Спасибо!

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

1. что ты пробовал?

Ответ №1:

Вы можете использовать numpy sum() для оси строк (ось = 0). Это суммирует значения в одном и том же месте каждой строки или, другими словами, суммирует значения в одном и том же столбце.

 import numpy as np a = np.array([[1,2], [2,5], [4,8]]) print(np.sum(a,axis=0))  

Ответ №2:

 x, y = a[:,0].sum(), a[:,1].sum()  

Ответ №3:

Используйте встроенные модули numpy

 np.sum(a,axis=0)  

Ответ №4:

 a = np.array([[1,2], [2,5], [4,8]]) x = 0 y = 0 for element in a:  x  = element[0]  y  = element[1] print("x: "   str(x)) print("y: "   str(y))  

Выход:

 gt;gt; x: 7 gt;gt; y: 15  

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

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

1. Это очень дорогой способ использования ndarray. Numpy оптимизирует операции. Здесь вам нужно преобразовать numpy int64 в python int и выполнить вызов функции уровня python и сумму для каждого элемента. С помощью встроенного .sum это преобразование не требуется.