【发布时间】:2019-08-01 05:01:34
【问题描述】:
我对 Python 很陌生,正在努力学习。似乎我复制的这段代码的几乎每个单元格都有一个错误(用于使用卡尔曼滤波器进行交易)。有人可以校对吗? 来源: https://www.marketcalls.in/python/implementation-kalman-filter-estimation-mean-python-using-pykalman-bokeh-nsepy.html
我尝试根据源代码复制和运行代码,但即使逐个单元格地运行,也会出现一个又一个错误。我尝试根据 Nsepy 的文档更新一些代码(get_price_history 变为 get_history,stock 变为 symbol),但我并没有走得太远。
df["date"] = pd.to_datetime(df.index)
mids = (df.Open + df.Close)/2
spans = abs(df.Close-df.Open)
inc = df.Close > df.Open
dec = df.Open > df.Close
w = 12*60*60*1000 # half day in ms
output_notebook()
TOOLS = "pan,wheel_zoom,box_zoom,reset,save"
p = figure(x_axis_type="datetime", tools=TOOLS, plot_width=1000, toolbar_location="left",y_axis_label = "Price",
x_axis_label = "Date")
p.segment(df.date, df.High, df.date, df.Low, color="black")
p.rect(df.date[inc], mids[inc], w, spans[inc], fill_color='green', line_color="green")
p.rect(df.date[dec], mids[dec], w, spans[dec], fill_color='red', line_color="red")
p.line(df.date,state_means,line_width=1,line_color = 'blue',legend="Kalman filter")
p.title = "Implementation of Kalman Filter Estimation - TCS EOD chart"
p.xaxis.major_label_orientation = pi/4
p.grid.grid_line_alpha=0.3
根据来源,我希望在上面的代码之后运行 show(p),但得到名称错误“show' is not defined。如果我在没有 show(p) 的情况下运行上面的代码,我会得到名称错误“pd 未定义”。常量名称错误。
【问题讨论】:
-
请用通用 [python] 标签标记 所有 python 相关问题
-
在第一个单元格中运行
import pandas as pd。 -
您是否导入了链接中给出的所有库和模块?更重要的是,您的系统中是否正确设置了所有库?
-
@krishna 我按照建议做了,在运行第一个单元格代码后运行了整个代码,现在它返回 NameError: name 'df' is not defined。
-
@Sayandip Dutta 我正在将 IPython 与 Jupyter Notebook 一起使用,并已在终端中导入并检查了 PyKalman、Bokeh、NSEPy 和 pandas 的安装。就设置正确而言 - 如何检查?
标签: python python-3.x jupyter-notebook ipython