Pandas:从字符串中提取时间戳的最有效方法
Pandas: most efficient way to extract timestamp from a string
我有一列要从字符串转换为日期时间戳。相应列中的每一行都包含以下格式的字符串数据:“01.01.2020 00:00 - 01.01.2020 00:15”。我想将其转换为日期时间对象“2020-01-01 00:00:00+00:00”
我只需要日期的第一部分,多余的部分是不必要的。我知道我可以将它拆分为 space 上的多列作为分隔符并使用:
pd.to_datetime(df['Date/time before conversion'].format='%d.%m.%Y %H:%M')
但是有没有一种更有效的方式,我可以直接在字符串上分配年、月等位,同时跳过我不需要的绒毛?
IIUC,您可以提取第一部分并转换为日期时间:
pd.to_datetime(df['Date/time before conversion'].str.extract('(\S+)', expand=False))
使用:
pd.to_datetime(df['Date/time before conversion'].str.split().str[0], dayfirst=True)
我有一列要从字符串转换为日期时间戳。相应列中的每一行都包含以下格式的字符串数据:“01.01.2020 00:00 - 01.01.2020 00:15”。我想将其转换为日期时间对象“2020-01-01 00:00:00+00:00”
我只需要日期的第一部分,多余的部分是不必要的。我知道我可以将它拆分为 space 上的多列作为分隔符并使用:
pd.to_datetime(df['Date/time before conversion'].format='%d.%m.%Y %H:%M')
但是有没有一种更有效的方式,我可以直接在字符串上分配年、月等位,同时跳过我不需要的绒毛?
IIUC,您可以提取第一部分并转换为日期时间:
pd.to_datetime(df['Date/time before conversion'].str.extract('(\S+)', expand=False))
使用:
pd.to_datetime(df['Date/time before conversion'].str.split().str[0], dayfirst=True)