2016-07-07 5 views
1
내가 DF 열

팬더 : 증가 날짜

buys['date_min'] = (buys['date'] - MonthDelta(1)) 
buys['date_min'] = (buys['date'] + timedelta(days=5)) 

date 몇 가지 작업을해야하지만

TypeError: incompatible type [object] for a datetime/timedelta operation

어떻게 그것이 열을 할 수 돌아

? 열 date에서 type OD 값이 string 때문에

+0

'type [object]'는 datetimes가 아닌 값이 적어도 있음을 암시합니다. – miraculixx

답변

3

나는, 당신이 변환 첫 번째 열 dateto_datetime 필요하다고 생각 :

buys['date_min'] = (pd.to_datetime(buys['date']) - MonthDelta(1)) 
buys['date_min'] = (pd.to_datetime(buys['date']) + timedelta(days=5)) 

편집 : 당신은 to_datetime-format을 매개 변수가 필요하고 다른 해결책이 to_timedelta을 함께

buys = pd.DataFrame({'date':['01.01.2016','20.02.2016']}) 
print (buys) 
     date 
0 01.01.2016 
1 20.02.2016 

buys['date']= pd.to_datetime(buys['date'],format='%d.%m.%Y') 
buys['date_min'] = buys['date'] + pd.to_timedelta(5,unit='d') 
print (buys) 
     date date_min 
0 2016-01-01 2016-01-06 
1 2016-02-20 2016-02-25 
+0

그것은'TypeError : datetime/timedelta 연산에 대해 호환되지 않는 type [object] 오류를 반환합니다. 데이터는 '01.01.2016, 20.02.2016'과 같습니다. – ldevyataykina

+0

해결책을 추가하십시오. 확인하십시오. – jezrael

+0

'AttributeError : 'module'객체에 'TimeDelta'속성이 없습니다. – ldevyataykina