如何从时间格式中删除冒号

How to remove colon from time format

我有一个名为 "Start Time" 的列,它是一个字符串,它显示时间为 11:20:15。 我想要112015格式的时间。所以我需要替换冒号。

我试过:

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

但这没有用。它也没有给出错误,但时间仍然是 11:20:15.

有人能给我指出正确的方向吗?

您需要添加 .str 以将每个值作为 str 处理并应用 .replace() (documentation) :

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

df["Start Time"] 列是字符串数据类型吗?通常 pandas 会将日期作为日期时间对象读入。您可以通过打印 df.dtypes 来检查这一点,看看它是否为该列显示 object

然后我建议使用 df.strftime(字符串格式化程序),如下所示: 如果您真的想要您提到的格式的字符串。

看起来您在 Start Time 列中有一个日期时间对象。使用 dt.strftime(%H%M%S)

例如:

df["Start Time"].dt.strftime(%H%M%S)

当我这样做的时候:

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

然后:

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

效果很好。谢谢大家和我一起思考!