Skip to content

pd.to_datetime ValueError or TypeError #5195

Closed
@vipatel10

Description

@vipatel10

Hi,

I am using pandas 0.12.0 and numpy 1.7.1.

Not sure if this is the expected functionality or not. I thought if coerce = True or errors='ignore' I wouldn't get this result:

In [372]: td = pd.Series(['May 04', 'Jun 02', 'Dec 11'], index=[1,2,3])

In [373]: td.apply(pd.to_datetime, format='%b %y', errors='ignore', coerce=True)
Out[373]:
1   2004-05-01 00:00:00
2   2002-06-01 00:00:00
3   2011-12-01 00:00:00
dtype: datetime64[ns]

In [374]: td = pd.Series(['May 04', 'Jun 02', ''], index=[1,2,3])

In [375]: td.apply(pd.to_datetime, format='%b %y', errors='ignore', coerce=True)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-375-0c44a3c36f8e> in <module>()
----> 1 td.apply(pd.to_datetime, format='%b %y', errors='ignore', coerce=True)

C:\Python27\lib\site-packages\pandas\core\series.pyc in apply(self, func, convert_dtype, args, **kwds)
   2534             values = lib.map_infer(values, lib.Timestamp)
   2535
-> 2536         mapped = lib.map_infer(values, f, convert=convert_dtype)
   2537         if isinstance(mapped[0], Series):
   2538             from pandas.core.frame import DataFrame

C:\Python27\lib\site-packages\pandas\lib.pyd in pandas.lib.map_infer (pandas\lib.c:42320)()

C:\Python27\lib\site-packages\pandas\core\series.pyc in <lambda>(x)
   2523
   2524         if kwds or args and not isinstance(func, np.ufunc):
-> 2525             f = lambda x: func(x, *args, **kwds)
   2526         else:
   2527             f = func

C:\Python27\lib\site-packages\pandas\tseries\tools.pyc in to_datetime(arg, errors, dayfirst, utc, box, format, coerce, u
nit)
    127         return _convert_listlike(arg, box=box)
    128
--> 129     return _convert_listlike(np.array([ arg ]), box=box)[0]
    130
    131 class DateParseError(ValueError):

C:\Python27\lib\site-packages\pandas\tseries\tools.pyc in _convert_listlike(arg, box)
    115                 return DatetimeIndex._simple_new(values, None, tz=tz)
    116             except (ValueError, TypeError):
--> 117                 raise e
    118
    119     if arg is None:

ValueError: time data '' does not match format '%b %y'

In [376]:

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions