【问题标题】:Pandas datetools module errorPandas datetools 模块错误
【发布时间】:2018-11-28 14:31:11
【问题描述】:

我正在尝试从 pandas datetools 调用一个模块,但收到一个错误,即 mofule 对象没有我所调用的名称的属性。想知道是否有人可以对这个问题有所了解。以下是我尝试使用的代码:

import blpapi
import pandas as pd
from tia.bbg import LocalTerminal
import datetime
from pandas import datetools

sid = 'BKLN US EQUITY'
events = ['TRADE','AT_TRADE']
dt = pd.datetools.BDAY(-1).apply(pd.datetime.now())

这是我面临的错误:

Traceback (most recent call last):
File "C:\bb_test.py", line 14, in <module>
dt = pd.datetools.BDAY(-1).apply(pd.datetime.now())
File "C:\Python27\lib\site-packages\pandas\util\_depr_module.py", line 61, in 
__getattr__
obj = getattr(deprmodule, name)
AttributeError: 'module' object has no attribute 'BDAY'

【问题讨论】:

    标签: python pandas module attributeerror bloomberg


    【解决方案1】:

    首先,请考虑 pandas datetools 已弃用,并将在未来的版本中删除。

    但如果你坚持使用它,你需要将timedelta对象传递给bday函数,如下所示:

    import pandas as pd
    from pandas import datetools
    import datetime
    from datetime import timedelta
    
    # Constructing timedelta object 
    d = timedelta(days=-1)
    # passing it to bday
    pd.datetools.bday(d).apply(pd.datetime.now())
    

    【讨论】:

    • 谢谢!我知道 datetools 已被弃用 - 你对我在这种情况下可以使用什么有什么建议吗?
    • 我没有完全理解这个场景,我不确定sidevents 的用途是什么,但是如果你正在寻找一个函数来返回昨天的日期时间pythonic 格式,您可以像这样轻松使用datetime 模块:now = datetime.datetime.now() print "yesterday:", now - datetime.timedelta(days=-1)
    • 我正在使用名为 blpapi 和 tia 的包从彭博终端提取财务数据(sid 和 events 只是稍后在此处使用的标识符)-但特别是,是的,我只是在寻找另一个函数拉昨天的日期时间。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2021-12-10
    • 2014-01-29
    • 1970-01-01
    • 2015-02-28
    • 2022-06-12
    • 2019-08-19
    • 1970-01-01
    相关资源
    最近更新 更多