брать средние значения определенных индексов, используя другой список в python - PullRequest
1 голос
/ 13 марта 2020

Я надеялся взять среднее из списка, используя другой список с индексами начала и конца.

, например:

a = [3, 9]

b = [0, 1, 12, 9, 0, 8, 9, 3, 3, 5, 7, 1, 4, 6, 6]

Я хочу взять среднее из чисел от b[3] to b[9] и это то, что у меня есть до сих пор

counter = a[0]
sum = b[counter]
while counter < a[1] + 1:
   counter += 1
   sum = sum + b[counter]
denominator = a[1] - a[0] + 1
avg = sum/denominator

Но после проверки, кажется, дает неправильную вещь

Ответы [ 2 ]

1 голос
/ 13 марта 2020

вы можете использовать statistics.mean

from statistics import mean
a = [3, 9]

b = [0, 1, 12, 9, 0, 8, 9, 3, 3, 5, 7, 1, 4, 6, 6]
mean(b[a[0]: a[1] + 1])

или вы можете использовать:

sum(b[a[0]: a[1] + 1]) / len(b[a[0]: a[1] + 1])
0 голосов
/ 13 марта 2020

Я бы предложил следующее:

from statistics import mean
a = [3, 9]
b = [0, 1, 12, 9, 0, 8, 9, 3, 3, 5, 7, 1, 4, 6, 6]
avg = mean(b[a[0]:a[1]+1])
print (avg)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...