Найти - Пользователи
Полная версия: Вычитание переменной из всех элементов массива
Начало » Python для новичков » Вычитание переменной из всех элементов массива
1
Bonderson
Доброго времени суток! Требуется найти среднее арифметическое из отрицательных членов массива и вычесть это значение из всех элементов данного массива. Я написал код для нахождения среднего арифметического, но с вычитанием проблемы. Если просто написать
array -= mean
, где array — наш массив, а mean — среднее арифметическое, он ругается: «TypeError: unsupported operand type(s) for -=: ‘list’ and ‘int’». Помогите, пожалуйста!
scidam
Для работы с массивами – пользуйтесь numpy.

 import numpy as np
your_list = [1,2,3]
your_value = 3 # or mean_value = np.mean(your_list)
print((np.array(your_list) - your_value).tolist())
Метод .tolist() в конце не обязателен, это только чтобы на выходе был список, т.е. начали со списка, в итоге – тоже список.
Rodegast
 >>> s = [-10,5,8,-1,-3,10]
>>> ms = filter(lambda x: x<0, s)
>>> m = sum(ms)/len(s)
>>> [ x - m for x in s ]
[-7, 8, 11, 2, 0, 13]
Bonderson
Спасибо всем!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB