Python-Polars: как заполнить NA средним значением двух значений между ними?Python

Программы на Python
Anonymous
Python-Polars: как заполнить NA средним значением двух значений между ними?

Сообщение Anonymous »

У меня есть фрейм данных Polars с различными метеостанциями и их данными. Конечная цель – анализ временных рядов. Однако некоторые значения температуры отсутствуют. Чтобы не портить модель, я хочу иметь возможность заполнить пробелы средним значением двух дней по обе стороны от нее. Я хотел бы каким-то образом сгруппировать метеостанцию ​​group_by (), чтобы не брать информацию об одной станции и использовать ее для других станций, отсутствующих в среднем за день. Если имеется только одно значение (Начало или Конец периода времени), я хочу использовать то же число, что и день рядом с ним.
Например,



Дата
Погодная_станция
Температура




24 января 2024 г.
A
65


25 января 2024 г.
A
Нет

26 января 2024 г.
A
78


24 января 2024 г.
B
Нет


25 января 2024 г.
B
65


26 января 2024 г.
< td>B
78



Желаемое решение:



Дата
Погодная_станция
Температура




24 января 2024 г.
A
74


25 января 2024 г.
A
76


26 января 2024 г.
< td>A
78


24 января 2024 г.
B
65


01.2024- 25
B
65


26 января 2024 г.
B
78



Как можно заметить, 76 — это среднее значение 74 и 78 за два дня вокруг него, а в случае 24 января 2024 г. B это 65 лет, потому что предшествующей даты нет. Я хочу то же самое для обратного (без даты публикации) [пр. если бы это было 27 января 2024 г., нет для Weather_station B, я бы хотел, чтобы значение было 78]
Вот пример кадра данных:
data = {
'Date': ['2024-01-24', '2024-01-25', '2024-01-26', '2024-01-24', '2024-01-25', '2024-01-26'],
'Weather_Station': ['A', 'A', 'A', 'B', 'B', 'B'],
'Temp': [74, None, 78, None, 65, 78]
}


Подробнее здесь: https://stackoverflow.com/questions/784 ... es-between

Вернуться в «Python»