Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 10, 2018 16:01:33

Bonderson
Зарегистрирован: 2018-01-10
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Вычитание переменной из всех элементов массива

Доброго времени суток! Требуется найти среднее арифметическое из отрицательных членов массива и вычесть это значение из всех элементов данного массива. Я написал код для нахождения среднего арифметического, но с вычитанием проблемы. Если просто написать

array -= mean
, где array — наш массив, а mean — среднее арифметическое, он ругается: «TypeError: unsupported operand type(s) for -=: ‘list’ and ‘int’». Помогите, пожалуйста!

Офлайн

#2 Янв. 11, 2018 04:16:34

scidam
Зарегистрирован: 2016-06-15
Сообщения: 288
Репутация: +  35  -
Профиль   Отправить e-mail  

Вычитание переменной из всех элементов массива

Для работы с массивами – пользуйтесь 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() в конце не обязателен, это только чтобы на выходе был список, т.е. начали со списка, в итоге – тоже список.

Офлайн

#3 Янв. 11, 2018 09:56:08

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2843
Репутация: +  186  -
Профиль   Отправить e-mail  

Вычитание переменной из всех элементов массива

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



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#4 Янв. 11, 2018 10:10:58

Bonderson
Зарегистрирован: 2018-01-10
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Вычитание переменной из всех элементов массива

Спасибо всем!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version