将datetime变量分配给pandas数据框列

时间:2020-09-11 11:20:43

标签: python pandas dataframe datetime

我有一个日期时间变量SqlString,我试图用该值填充每一行的数据框列。因此,我做了类似date_var=datetime(2020,09,11,0,0,0 )的操作,首先将“ Time”字段的数据类型显示为datetime64 [ns],而不是datetime,这将使用值df['Time']=date_var而非2020-09-11填充“时间”字段。我做错什么了吗?

谢谢

2 个答案:

答案 0 :(得分:1)

您没有做错任何事情。它打印为没有时间的日期这一事实只是Pandas中的一项约定,可以简化输出。如果您还希望同时打印带有时间部分的列,则可以使用df['Time'].dt.strftime('%F %T')

将日期时间存储为Pandas类型(datetime64[ns])优于将其存储为Python类型,因为它可以更有效地进行操作(例如,向所有偏移量添加偏移量)。

答案 1 :(得分:0)

尝试此代码

import datetime
import pandas as pd

date_var = datetime.datetime(2020,9,11,0,0,0)
df['Time'] = date_var.strftime('%Y-%m-%d %H:%M:%S')
df['Time'] = pd.to_datetime(df['Time'])