我有datetime
列:
>>> data_df.revoting_date
Out[9]:
0 2017-01-09 08:40:50.241
1 2017-01-09 08:40:50.241
2 2017-01-09 08:40:50.241
3 2017-01-09 08:40:50.241
4 2017-01-09 08:40:50.241
5 2017-01-09 08:40:50.241
6 2017-01-09 08:40:50.241
7 2017-01-09 08:40:50.241
8 2017-01-09 08:40:50.241
9 2017-01-09 08:40:50.241
10 2017-01-09 08:40:50.241
11 2017-01-09 08:40:50.241
12 2017-01-09 08:40:50.241
13 2017-01-09 08:40:50.241
14 2017-01-09 08:40:50.241
Name: revoting_date, dtype: datetime64[ns]
但是当我尝试获得一个单独的行时,我得到Timestamp
结果:
data_df.revoting_date.iloc[0]
Out[11]: Timestamp('2017-01-09 08:40:50.241000')
如何以datetime
的形式获得结果?
答案 0 :(得分:2)
我认为你需要:
a = data_df.revoting_date.iloc[0].to_pydatetime()
print (a)
2017-01-09 08:40:50.241000
print (type(a))
<class 'datetime.datetime'>
如果需要转换列使用to_pydatetime
中的所有值,但输出为numpy array
:
data_df.revoting_date.dt.to_pydatetime()
答案 1 :(得分:1)
带有列表的切片
data_df.revoting_date.iloc[[0]]
0
0 2017-01-09 08:40:50.241
Name: revoting_date, dtype: object
使用.iloc[0]
时,它将抓取位于该位置的低维对象。另一方面,.iloc[[0]]
在列表中的所有位置抓取低维对象集。此集将维度从标量时间戳返回到日期时间列。