#python #pandas
#python #pandas
Вопрос:
У меня есть фрейм данных Pandas со строковым столбцом, который содержит временную метку как «20000530 172700», Как элегантно изменить такую строку на «2000-05-30 17:27:00»? Фрейм данных содержит> 10 тыс. строк. Я не хочу принимать каждое значение, вставлять «-» и «:» в указанные позиции. Есть ли решение с использованием маски?
Комментарии:
1. Взгляните на
.datetime()
. Однако формат, в котором находятся ваши строки, может усложнить задачу.
Ответ №1:
вы можете использовать pandas.to_datetime
:
pd.to_datetime(df["my_column"])
Если вы хотите настроить его, вы можете использовать pandas.Series.dt.strftime
, например:
pd.to_datetime(df["my_column"]).dt.strftime('%d%b%Y')
#The format will be something like 30May2000
Вы можете проверить все коды формата datetime здесь.
Комментарии:
1. Спасибо, Пабло! Просто pd.to_datetime(df[«my_column»]) дал мне желаемый результат. Еще раз спасибо!