Как написать функции для добавления нового столбца в кадре данных и на основе значения из существующих столбцов? - PullRequest
0 голосов
/ 01 апреля 2020

Как я могу написать функции для добавления нового столбца в кадре данных и на основе значения из существующих столбцов:

Request number      ReceivedDate                ClosedDate
1               2012-1-2                Nan
1               2012-1-2                2014-1-5
2               2013-1-4                Nan
2               2013-1-4                2016-1-5

Проблема, с которой я столкнулся здесь, состоит в том, что есть запрос, который занимает несколько лет, чтобы Полное и общее количество дней исчисляется тысячами и искажает данные. Я хотел распределить 365 дней, чтобы год не был закончен. Здесь я хочу добавить новый столбец со значением, если значение closeddate не равно нулю, а затем взять из него значение, в противном случае назначить значение последнего дня года. Также, что было бы лучшим способом продемонстрировать распределение полученных дел дат закрытых?

1 Ответ

0 голосов
/ 01 апреля 2020

Вы можете fillna с pd.offsets.YearEnd. Но не забудьте преобразовать в тип даты и времени:

# convert dates to datetime type
df.ReceivedDate = pd.to_datetime(df.ReceivedDate)
df.ClosedDate = pd.to_datetime(df.ClosedDate, errors='coerce')

df['ClosedDate'] = df.ClosedDate.fillna(df.ReceivedDate + pd.offsets.YearEnd())

Вывод:

   Request number ReceivedDate ClosedDate
0               1   2012-01-02 2012-12-31
1               1   2012-01-02 2014-01-05
2               2   2013-01-04 2013-12-31
3               2   2013-01-04 2016-01-05
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...