【发布时间】:2019-07-22 19:16:03
【问题描述】:
我有一个数据框df 有一个列"date",我想从这种格式中走出来:
2018-12-11 15:26:04.877
进入datetime,其中没有微秒,所有秒都为零:
2018-12-11 15:26:00
到目前为止我所做的是:
import pandas as pd
import datetime
dfdf=pd.read_excel('datefix.xlsx')
print(df.dtypes)
df.date =pd.to_datetime(df.date, errors='coerce')
print(df.date)
df["date"].datetime.replace(microsecond=0)
但我收到以下错误
AttributeError: 'Series' object has no attribute 'datetime'
还有其他方法可以达到预期的结果吗?
【问题讨论】:
-
df["date"]是数据框的一部分。它的类型为pd.Series。如果要替换系列中的每个元素,则必须首先深入挖掘数据框。 -
尝试
map方法将datetime.replace...应用于列的每个元素。 -
df["d"] = df["date"].apply(lambda x:time.strftime('%Y-%m-%d %H:%M:%S'))给了我格式,但不是列的每个元素,它打印今天的日期和时间,你能告诉我我做错了什么吗?
标签: python pandas datetime dataframe format