Pandas datetime列为序数

Ric*_*ell 10 python datetime pandas

我正在尝试使用日期时间列中的序数日创建一个新的Pandas数据帧列:

import pandas as pd
from datetime import datetime

print df.ix[0:5]
                              date
file                              
gom3_197801.nc 2011-02-16 00:00:00
gom3_197802.nc 2011-02-16 00:00:00
gom3_197803.nc 2011-02-15 00:00:00
gom3_197804.nc 2011-02-17 00:00:00
gom3_197805.nc 2011-11-14 00:00:00

df['date'][0].toordinal()

Out[6]:
734184

df['date'].toordinal()

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-7-dbfd5e8b60f0> in <module>()
----> 1 df['date'].toordinal()

AttributeError: 'Series' object has no attribute 'toordinal'
Run Code Online (Sandbox Code Playgroud)

我想这是一个基本问题,但我在最近30分钟内一直在努力阅读文档.

如何为数据框创建序数时间列?

low*_*ech 20

使用申请:

df['date'].apply(lambda x: x.toordinal())
Run Code Online (Sandbox Code Playgroud)

  • 很快,`df['date'].apply(datetime.toordinal)` (2认同)

beh*_*uri 9

你也可以用map:

import datetime as dt
df['date'].map(dt.datetime.toordinal)
Run Code Online (Sandbox Code Playgroud)

  • 时间数据四舍五入为整数,例如,我有`2015-12-08 12:13:46.343000`但这是四舍五入到735940,我怎么能得到小数? (4认同)