如何将带有小时/分钟字符串作为时间戳的CSV导入panda数据集



我需要将CSV导入panda数据集。CSV具有仅具有一天中的时间的列,例如;16:45";在分钟级别上;21:03:39";秒级别。使用read_cvs和对列使用parse_dates导入它不会保持原样,它会将其转换为";2022/10/07 16:45";或";2022/10/07 21:03:39";对于第二个例子。如何导入它并将类型设置为"时间"而不添加日期?

这样的东西怎么样?

import datetime as dt
import pandas as pd
df = pd.DataFrame([[1, '16:45'],
[2, '21:03:39']], columns=['x1', 'time_string'])
df['time'] = pd.to_datetime(df['time_string']).apply(lambda t: dt.time(t.hour, t.minute, t.second))
# Output these to show it works
df.head()
df['time'].apply(lambda x: type(x))

返回此:

x1 time_string      time
0   1       16:45  16:45:00
1   2    21:03:39  21:03:39
0    <class 'datetime.time'>
1    <class 'datetime.time'>
Name: time, dtype: object

最新更新