Python - Рассчитать среднее значение N без прокатки - PullRequest
0 голосов
/ 11 июля 2020

У меня есть фрейм данных со следующими записями, и мне нужно найти СРЕДНЕЕ из 3 и 5 БЕЗ ПРОКАТКИ. Я получаю результат, в котором СРЕДНЕЕ значение вычисляется для всех записей с указанным c именем БЕЗ ПРОКРУТКИ. Я могу реализовать СРЕДНЕЕ 5 только с помощью ПРОКАТКИ, но прокатка не требуется.

Как получить Среднее значение 3,5 или 5 БЕЗ ПРОКАТКИ?

Name    Price       Date
X   239.20      2020-07-10
X   244.80      2019-04-21
X   248.00      2018-05-09
X   254.80      2020-06-30
X   263.65      2019-11-04
X   234.50      2018-07-22
X   234.95      2019-07-04
A   131.30      2020-06-11
A   126.85      2019-05-25
A   134.25      2020-04-07
A   137.70      2019-07-09
A   136.40      2020-07-18
A   134.50      2018-07-22
A   134.95      2019-07-04


findMean = (df[(df.Name.isin(['X', 'A'])) & (df.Date <= df.Date.max())]
        .groupby('Name')
        .apply(lambda x: x.sort_values(['Name', 'Date'], ascending=False)).reset_index(drop=True)
        .groupby('Name')
        #.head(5)
        .Price.mean()
        #.rolling(window=5).Price.mean()
    )

print(findMean)

Я получаю результат СРЕДНЕГО значения все с РОЛИКОМ. Но мне нужно СРЕДНЕЕ 0f 3,5 или 5 без РОЛИКА

Output:
Name
X        253.xx
A    108.xx
Name: Price, dtype: float64
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...