Как удалить двоеточие из формата времени - PullRequest
0 голосов
/ 13 января 2020

У меня есть столбец с именем «Время начала», это строка, и он отображает время как 11:20:15. Я хочу, чтобы время было в формате 112015. Поэтому мне нужно заменить двоеточие.

Я пробовал:

["Start Time"] = df["Start Time"].replace(":","", regex=True)

Но это не сработало. Это тоже не дало ошибку, но время осталось 11: 20: 15.

Может ли кто-нибудь указать мне правильное направление?

Ответы [ 4 ]

0 голосов
/ 18 января 2020

Когда я сделал:

df['Start Time'] = df['Start Time'].astype(str)

А потом:

["Start Time"] = df["Start Time"].replace(":","", regex=True)

Это сработало отлично. Спасибо всем, что подумали со мной!

0 голосов
/ 13 января 2020

Является ли столбец df["Start Time"] типом строки? Часто pandas будет читать в датах как объекты даты и времени. Вы можете проверить это, напечатав df.dtypes и посмотрите, будет ли написано object для этого столбца.

Тогда я бы порекомендовал использовать df.strftime (формататор строк), как здесь: Как изменить формат даты и времени в pandas, если вы действительно хотите, чтобы строка в указанном вами формате .

0 голосов
/ 13 января 2020

Похоже, у вас есть объект времени данных в столбце Start Time. Используйте dt.strftime(%H%M%S)

Пример:

df["Start Time"].dt.strftime(%H%M%S)
0 голосов
/ 13 января 2020

Вам необходимо добавить .str для обработки каждого значения в виде строки и применить .replace() ( документация ):

df["Start Time"] = df["Start Time"].str.replace(":","")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...