我有一个Pandas数据帧df,其中包含日期时间及其各自的值。现在我想对数据框中的每个日期时间进行一些格式更改,但是注意到正常的for循环并没有实际更改数据框中的任何内容。
这就是我尝试过的,也展示了我尝试做的事情:
#original format of the datetimes: sunnuntai 1.1.2017 00:00
for i in df["Datetime"]:
#removes the string containing the weekday from the beginning
i = re.sub("^[^ ]* ","", i)
#converts 1.1.2017 00:00 into 2017-01-01 00:00
i = datetime.datetime.strptime(i, "%d.%m.%Y %H:%M").strftime("%Y-%m-%d %H:%M")
我应该如何永久地进行这些格式更改?谢谢。
答案 0 :(得分:2)
抛弃循环,目标是矢量化。我打破了步骤 -
pd.to_datetime
删除主要文字,dayfirst=True
dt.strftime
用于日期时间转换,df['Datetime'] = pd.to_datetime(
df['Datetime'].str.split(n=1).str[1], dayfirst=True
).dt.strftime("%Y-%m-%d %H:%M")
将结果转换为您的格式
let signingAlert = SigningAlert()
signingAlert.modalPresentationStyle = .custom
present(signingAlert,animated: true,completion: nil)