Как рассчитать скользящее среднее в Python 3?
Позволять'скажем, у меня есть список:
y = ['1', '2', '3', '4','5','6','7','8','9','10']
Я хочу создать функцию, которая вычисляет скользящее среднее значение за n дней. Так что еслиn
было 5, я хотел бы, чтобы мой код вычислил первые 1-5, добавил его и нашел среднее значение, которое было бы 3,0, затем перешел к 2-6, вычислило среднее значение, которое было бы 4,0, затем 3-7, 4-8, 5-9, 6-10.
Я неЯ не хочу вычислять первые n-1 дней, поэтому, начиная с n-го дня, это 'Буду считать предыдущие дни.
def moving_average(x:'list of prices', n):
for num in range(len(x)+1):
print(x[num-n:num])
Это, кажется, распечатать то, что я хочу:
[]
[]
[]
[]
[]
['1', '2', '3', '4', '5']
['2', '3', '4', '5', '6']
['3', '4', '5', '6', '7']
['4', '5', '6', '7', '8']
['5', '6', '7', '8', '9']
['6', '7', '8', '9', '10']
Тем не менее, я нене знаю, как рассчитать числа в этих списках. Есть идеи?