Python 错误:尝试转换格式为2012年2月10日上午9:00:00的日期时,单位缩写无效:/
我正在使用pandas使用以下代码将包含日期和时间的列转换为秒:Python 错误:尝试转换格式为2012年2月10日上午9:00:00的日期时,单位缩写无效:/,python,pandas,machine-learning,python-datetime,Python,Pandas,Machine Learning,Python Datetime,我正在使用pandas使用以下代码将包含日期和时间的列转换为秒: df['date_time'] = pd.to_timedelta(df['date_time']) df['date_time'] = df['date_time'].dt.total_seconds() df['date_time'] = pd.to_datetime(df['date_time'], errors='coerce') df['date_time'] = df['date_time'].dt.total_s
df['date_time'] = pd.to_timedelta(df['date_time'])
df['date_time'] = df['date_time'].dt.total_seconds()
df['date_time'] = pd.to_datetime(df['date_time'], errors='coerce')
df['date_time'] = df['date_time'].dt.total_seconds()
print(df.head())
数据集是:
如果我使用以下代码:
df['date_time'] = pd.to_timedelta(df['date_time'])
df['date_time'] = df['date_time'].dt.total_seconds()
df['date_time'] = pd.to_datetime(df['date_time'], errors='coerce')
df['date_time'] = df['date_time'].dt.total_seconds()
print(df.head())
然后我得到以下错误:
AttributeError: 'DatetimeProperties' object has no attribute 'total_seconds'
因此,对于dt.timestamp
因此,我的问题是:
-
获取两个日期之间的差值,即可获得时间增量。
由于datetime列是一个字符串,您还需要首先将其转换为datetime:df['date\u time']=pd.to\u datetime(df['date\u time'],格式='%m/%d/%Y%H:%m')
。
然后您可以尝试这样的方法:ref_date=datetime.datetime(1970,1,1,0,0);df['secs\u since\u epoch']=(df['date\u time']-ref\u date).dt.总秒数()
@WeNYoBen请仔细阅读问题。