python - 从 Pandas 的日期时间变量中删除时间?

标签 python pandas

我有一个变量,包含 30 万 strip 日期的记录,日期看起来像这样
2015-02-21 12:08:51
从那天起我想删除时间

日期变量的类型是 pandas.core.series.series

这是我试过的方法

from datetime import datetime,date
date_str = textdata['vfreceiveddate']  
format_string = "%Y-%m-%d"
then = datetime.strftime(date_str,format_string)   

一些随机错误

上面代码中textdata是我的datasetname,vfreceived date是一个由日期组成的变量
我如何编写代码以从日期时间中删除时间。

最佳答案

假设您所有的日期时间字符串都采用类似的格式,那么只需使用 to_datetime 将它们转换为日期时间即可然后调用 dt.date 属性以仅获取日期部分:

In [37]:

df = pd.DataFrame({'date':['2015-02-21 12:08:51']})
df
Out[37]:
                  date
0  2015-02-21 12:08:51
In [39]:

df['date'] = pd.to_datetime(df['date']).dt.date
df
Out[39]:
         date
0  2015-02-21

编辑

如果您只想更改显示而不是数据类型,那么您可以调用dt.normalize:

In[10]:
df['date'] = pd.to_datetime(df['date']).dt.normalize()
df

Out[10]: 
        date
0 2015-02-21

您可以看到 dtype 仍然是 datetime:

In[11]:
df.dtypes

Out[11]: 
date    datetime64[ns]
dtype: object

关于python - 从 Pandas 的日期时间变量中删除时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29310116/

相关文章:

Python 输入元组

python - 我可以合并 groupby 数据吗?

python - 如何访问 python datetime.time 列中的小时数

Python Pandas,运行总和,基于前一行值并分组

python - Pandas :将不同的功能应用于不同的列

python - 在保持变量的同时更改 Pandas 中的字符串

python - Pandas - 无法按重复列排序

python - 如何对其他列中的每个值求和组中的值?

python - Python 中 isnumeric 和 isdecimal 的区别

python - urllib2 在 https 网站上失败