首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将pandas.tslib.Timestamp转换为datetime python

将pandas.tslib.Timestamp转换为datetime python
EN

Stack Overflow用户
提问于 2014-09-15 15:52:31
回答 9查看 110.5K关注 0票数 52

我有一个df时间序列。我提取了索引,并希望将每个索引转换为datetime。你要怎么做呢?我试着使用pandas.to_datetime(x),但是在我使用type()之后检查时它并没有转换它

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2016-03-12 02:53:56

只需尝试pydatetime()

代码语言:javascript
运行
复制
>>> import pandas as pd
>>> t = pd.tslib.Timestamp('2016-03-03 00:00:00')
>>> type(t)
pandas.tslib.Timestamp
>>> t.to_pydatetime()
datetime.datetime(2016, 3, 3, 0, 0)

更改为datetime.date类型

代码语言:javascript
运行
复制
>>> t.date()
datetime.date(2016, 3, 3)
票数 105
EN

Stack Overflow用户

发布于 2018-05-02 02:46:51

只是更新一下这个问题,我已经尝试了最不正确的答案,它给了我这个警告。

usr/local/lib/python3.5/dist-packages/IPython/core/interactiveshell.py:2910: FutureWarning:不推荐to_datetime。使用self.to_pydatetime() exec(code_obj,self.user_global_ns,self.user_ns)

并建议我使用pydatetime()

例如

sample = Timestamp('2018-05-02 10:08:54.774000')

sample.to_datetime()将返回datetime.datetime(2018, 4, 30, 10, 8, 54, 774000)

票数 5
EN

Stack Overflow用户

发布于 2014-11-20 18:01:55

我也遇到了同样的问题,并尝试了@aikramer2 2中的解决方案,将一列添加到我的df中,类型为“datetime.datetime”,但我还是得到了一个熊猫数据类型:

代码语言:javascript
运行
复制
#libraries used -
import pandas as pd
import datetime as dt

#loading data into a pandas df, from a local file. note column [1] contains a datetime column -
savedtweets = pd.read_csv('/Users/sharon/Documents/ipython/twitter_analysis/conftwit.csv', sep='\t', 
                      names=['id', 'created_at_string', 'user.screen_name', 'text'], 
                      parse_dates={"created_at" : [1]})
print int(max(savedtweets['id'])) #535073416026816512
print type(savedtweets['created_at'][0]) # result is <class 'pandas.tslib.Timestamp'>

# add a column specifically using datetime.datetime library -
savedtweets['datetime'] = savedtweets['created_at'].apply(lambda x: dt.datetime(x.year,x.month,x.day))
print type(savedtweets['datetime'][0]) # result is <class 'pandas.tslib.Timestamp'>

我怀疑熊猫df不能存储datetime.datetime数据类型。当我创建一个简单的python列表来存储datetime.datetime值时,我获得了成功:

代码语言:javascript
运行
复制
savedtweets = pd.read_csv('/Users/swragg/Documents/ipython/twitter_analysis/conftwit.csv', sep='\t', 
                      names=['id', 'created_at_string', 'user.screen_name', 'text'], 
                      parse_dates={"created_at" : [1]})
print int(max(savedtweets['id'])) #535073416026816512
print type(savedtweets['created_at'][0]) # <class 'pandas.tslib.Timestamp'>
savedtweets_datetime= [dt.datetime(x.year,x.month,x.day,x.hour,x.minute,x.second) for x in savedtweets['created_at']]
print savedtweets_datetime[0] # 2014-11-19 14:13:38
print savedtweets['created_at'][0] # 2014-11-19 14:13:38
print type(dt.datetime(2014,3,5,2,4)) # <type 'datetime.datetime'>
print type(savedtweets['created_at'][0].year) # <type 'int'>
print type(savedtweets_datetime) # <type 'list'>
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25852044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档