正确解析 ddmmyyyy:HH:MM:SS.xxx 格式的 str 日期时间
correct parsing for a str date time in ddmmyyyy:HH:MM:SS.xxx format
我在 dask 数据框中将以下日期时间值保存为字符串日期:
ddf = dd.DataFrame({'date': ['15JAN1955:13:15:27.369', NaN,'25DEC1990:23:18:17.200', '06MAY1962:02:55:27.360', NaN, '20SEP1975:12:02:26.357']}
我使用了 ddf['date'].apply(lambda x: datetime.strptime(x,"%d%b%Y:%H:%M:%S.%f"), meta=datetime)
,但出现 TypeError: strptime() argument 1 must be a str, not float
错误。
我遵循从书中解析日期的方式:Data Science with python and dask。
.%f
是否期待浮动?或者它可能与 NaN
值有关?
您可以使用%f
that parses any decimal fraction of seconds with up to 6 digits
另外 20SEPT1975
应该是 20SEP1975
(一个月内没有 T
)
import pandas as pd
import numpy as np
df = pd.DataFrame({'date': ['15JAN1955:13:15:27.369', np.nan,
'25DEC1990:23:18:17.200', np.nan,
'06MAY1962:02:55:27.360', '20SEP1975:12:02:26.357']})
df['date'] = pd.to_datetime(df['date'], format="%d%b%Y:%H:%M:%S.%f")
print(df)
date
0 1955-01-15 13:15:27.369
1 NaT
2 1990-12-25 23:18:17.200
3 NaT
4 1962-05-06 02:55:27.360
5 1975-09-20 12:02:26.357
我在 dask 数据框中将以下日期时间值保存为字符串日期:
ddf = dd.DataFrame({'date': ['15JAN1955:13:15:27.369', NaN,'25DEC1990:23:18:17.200', '06MAY1962:02:55:27.360', NaN, '20SEP1975:12:02:26.357']}
我使用了 ddf['date'].apply(lambda x: datetime.strptime(x,"%d%b%Y:%H:%M:%S.%f"), meta=datetime)
,但出现 TypeError: strptime() argument 1 must be a str, not float
错误。
我遵循从书中解析日期的方式:Data Science with python and dask。
.%f
是否期待浮动?或者它可能与 NaN
值有关?
您可以使用%f
that parses any decimal fraction of seconds with up to 6 digits
另外 20SEPT1975
应该是 20SEP1975
(一个月内没有 T
)
import pandas as pd
import numpy as np
df = pd.DataFrame({'date': ['15JAN1955:13:15:27.369', np.nan,
'25DEC1990:23:18:17.200', np.nan,
'06MAY1962:02:55:27.360', '20SEP1975:12:02:26.357']})
df['date'] = pd.to_datetime(df['date'], format="%d%b%Y:%H:%M:%S.%f")
print(df)
date
0 1955-01-15 13:15:27.369
1 NaT
2 1990-12-25 23:18:17.200
3 NaT
4 1962-05-06 02:55:27.360
5 1975-09-20 12:02:26.357