Рассмотрим следующий Pandas DataFrame < /p>
reference sicovam label id date TTM price
0 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 18 52.69
1 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 30 NaN
2 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 49 53.11
3 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 60 NaN
4 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 77 53.69
5 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 90 NaN
6 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 109 54.42
7 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 137 55.15
8 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 171 55.80
9 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 180 NaN
10 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 15 50.04
11 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 30 NaN
12 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 46 50.52
13 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 60 NaN
14 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 74 51.17
15 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 90 NaN
16 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 106 51.95
17 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 134 52.73
18 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 168 53.46
19 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-05 180 NaN
после группировки с помощью ссылки , sicovam , lable , id и date столбцы, я хотел бы Заполните значения NAN столбца Price через линейную интерполяцию по сравнению с значением TTM , то есть в контексте формулы линейной интерполяции, цена является y и ttm - x переменная.
Пока я построил следующие строки.
def intepolate_group(group):
group["price"] = group["price"].interpolate(method='linear', limit_direction='both', axis=0)
return group
new_df = df.groupby(["reference","sicovam","label","id","date"])[["TTM","price"]].apply(intepolate_group)
< /code>
Тем не менее, результатом, который я получаю, является линейная интерполяция по номерам индексов на группу. Например, для следующей части набора данных я получаю 54.06 вместо 53,99 . Что мне все еще нужно, чтобы интерполировать по переменной TTM? значительное количество времени. < /p>
4 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 77 53.69
5 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 90 NaN
6 SCOM_WTI 68801903 WTI Nymex BBG:CL 2015-01-02 109 54.42
Подробнее здесь: https://stackoverflow.com/questions/794 ... s-of-colum
Python Pandas: Groupby несколько столбцов и линейно интерполяция значений столбца Y на основе другого столбца x ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение