Переупорядочить фрейм данных с календарного года на год воды с помощью Python - PullRequest
0 голосов
/ 31 августа 2018

Этот вопрос был решен с помощью R, но я не видел полезных примеров с Python. Я хотел бы узнать, как преобразовать данные о расходах за календарный год (с 01.01.1990 по 31.12.2010) в данные по водному году (т.е. с 01.10.1990 по 31.09.2010). Спасибо за помощь.

1 Ответ

0 голосов
/ 02 октября 2018

Вы можете использовать применить и написать свою собственную функцию для создания нового столбца WY:

ЕСЛИ у вас есть df:

                 Date  Discharge
0 2011-10-01 00:00:00  0.0
1 2011-10-01 01:00:00  0.0
2 2011-10-01 02:00:00  0.0
3 2011-10-01 03:00:00  0.0
4 2011-10-01 04:00:00  0.0

Тогда:

import pandas as pd

def assign_wy(row):
    if row.Date.month>=10:
        return(pd.datetime(row.Date.year+1,1,1).year)
    else:
        return(pd.datetime(row.Date.year,1,1).year)

df['WY'] = df.apply(lambda x: assign_wy(x), axis=1)
...