2013-07-29 3 views
1

В моих данных содержатся значения «0000-00-00 00:00:00». Как обращаться с ними?Как обрабатывать ноль datetime в python pandas?

Я получаю следующее сообщение об ошибке;

ValueError: ('Unable to parse 0000-00-00 00:00:00', u'occurred at index 1008')) 

Чтение из csv, я сделал это;

pd.to_datetime(data['Deadline Time']) pd.to_datetime(data['Completed Time'])

и с помощью here, я это сделал;

def func(x,y): 
    if x > y: 
    return 'delayed by ' + str(((x-y).seconds//60)%60) + ' minutes' 
    else: 
    return 'on time by ' + str(((y-x).seconds//60)%60) + ' minutes' 
data['time delay'] = data.apply(lambda row: func(pd.Timestamp(row['Completed Time']), pd.Timestamp(row['Deadline Time'])), axis=1) 
+0

что ваш ожидаемая за это значение? – waitingkuo

+0

Если «Крайний срок» - «7/17/2012 18:24» и «Время окончания» оказывается 0000-00-00 00:00:00 «Я, честно говоря, не знаю, что это получилось. Насколько я понимаю, «0000-00-00 00:00:00» в первую очередь не разбирается. – richie

ответ

1

Попробуйте, это значение будет преобразовано в NaT

pd.to_datetime(data['Deadline Time'], coerce=True) 
+0

Я получаю 'to_datetime() получил неожиданный аргумент ключевого слова 'coerce'' – richie

+0

Какую версию вы используете? – waitingkuo

+0

Я использую '0.11.0' – richie