我在熊猫中有这个日期时间列。我正在将其转换为特定的日期格式。我想将此日期转换为字符串并从中提取子字符串。我发现很难做到。有谁知道如何。
我的日期时间列中的数据如下所示:
2024-01-30 13:45:00
2024-01-30 14:45:00
2024-01-30 15:45:00
我已使用以下语句将其转换为日期列:
da['date1'] = da['timestamp'].dt.strftime("%y%b%d")
现在我的数据如下所示:
24Jan30
24Jan30
24Jan30
注意这是日期格式.
我想从中提取年份和月份。为此,我必须将其转换为没有给我预期结果的字符串。
预期输出:
24Jan
24Jan
24Jan
任何帮助将不胜感激。 提前致谢。
当然,可以轻松地从格式化的日期时间中提取年份和月份。不需要将其转换为字符串即可执行此操作。可以通过以下方式完成:
da['date1'] = da['timestamp'].dt.strftime("%y%b")
这将直接为提供所需的输出,即
24Jan
。
以下是完整代码段:
import pandas as pd
# 示例数据
da = pd.DataFrame({'timestamp': pd.to_datetime(['2024-01-30 13:45:00', '2024-01-30 14:45:00', '2024-01-30 15:45:00'])})
# 将日期时间格式化为所需的格式
da['date1'] = da['timestamp'].dt.strftime("%y%b")
# 打印结果
print(da)
在这个代码中:
-
我们使用
pd.to_datetime
将的时间戳列转换为日期时间对象。 -
然后,我们使用
strftime("%y%b")
将其直接格式化为所需的YYMon
格式。
这样,无需任何中间步骤即可获得所需的输出。
希望这有帮助!
标签:python,pandas,datetime,substring From: 78810593