Разница между двумя массивами в Python
У меня есть два массива, например:
array1=numpy.array([1.1, 2.2, 3.3])
array2=numpy.array([1, 2, 3])
Как я могу найти разницу между этими двумя массивами в Python, чтобы дать:
[0.1, 0.2, 0.3]
Как массив, а?
Извините, если это любительский вопрос - но любая помощь будет принята с благодарностью!
2 ответа
Это довольно просто с numpy
Просто вычтите массивы:
diffs = array1 - array2
Я получил:
diffs == array([ 0.1, 0.2, 0.3])
Вы также можете использовать numpy.subtract
Он имеет преимущество перед оператором разницы, -
То, что вам не нужно преобразовывать последовательности (списки или кортежи) в пустые массивы - вы сохраняете две команды:
array1 = np.array([1.1, 2.2, 3.3])
array2 = np.array([1, 2, 3])
Пример: (Python 3.5)
import numpy as np
result = np.subtract([1.1, 2.2, 3.3], [1, 2, 3])
print ('the difference =', result)
что дает вам
the difference = [ 0.1 0.2 0.3]
Помните, однако, что если вы попытаетесь вычесть последовательности (списки или кортежи) с -
Оператор вы получите ошибку. В этом случае вам нужны вышеуказанные команды для преобразования последовательностей в массивы numpy
Неправильный код:
print([1.1, 2.2, 3.3] - [1, 2, 3])