我刚刚在https://www.analyticsvidhya.com/blog/2018/10/predicting-stock-price-machine-learningnd-deep-learning-techniques-python/阅读了一篇文章,因此我想按照它进行测试。
我下载了Python,然后将代码的第一部分复制到.py文件中,如下所示:
#import packages
import pandas as pd
import numpy as np
#to plot within notebook
import matplotlib.pyplot as plt
%matplotlib inline
#setting figure size
from matplotlib.pylab import rcParams
rcParams['figure.figsize'] = 20,10
#for normalizing data
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler(feature_range=(0, 1))
#read the file
df = pd.read_csv('NSE-TATAGLOBAL(1).csv')
#print the head
df.head()
但是运行它时,我在代码行上收到“无效语法”错误:
%matplotlib inline
在搜索了问题之后,我知道%xxx是一个魔术命令,应该与IPython一起运行。因此,我尝试下载Anaconda并将其安装在我的计算机上。但是,当我尝试在Spyder中运行脚本时(我相信这是针对IPython的),我仍然遇到相同的错误。
如何运行本文中的脚本?
谢谢
答案 0 :(得分:1)
IPython提供的一个特别有趣的后端是内联后端。此功能仅适用于Jupyter Notebook和Jupyter QtConsole。可以按如下方式调用它:
%matplotlib内联
在此后端中,绘图命令的输出在Jupyter笔记本之类的前端内联显示,直接位于生成它的代码单元下方。生成的图也将存储在笔记本文档中。
如果您不使用诸如jupyter笔记本之类的前端,只需删除“%***** inline”
答案 1 :(得分:0)
直接安装jupyter,而无需安装anaconda或spyder
只需打开cmd或powershell,然后打开python -m pip install --upgrade pip
然后打开jupyter笔记本,再次打开cmd或powershell并键入jupyter notebook
这时您应该可以运行文章代码。 更多help
或从代码中删除%matplotlib inline
答案 2 :(得分:0)
指令%matplotlib inline
不是Python,它是Jupyter Notebook指令。如果您使用的是其他解释器,则该解释器不会执行,只会导致语法错误。
这在Purpose of "%matplotlib inline"中进行了解释。
答案 3 :(得分:0)
说明:
%matplotlib inline
iPython和Jupyter Notebook / Lab中使用的魔术命令,无需调用.show()函数即可显示图。
方法:
如果您想执行该代码而不进行任何更改,则可以执行以下操作:
conda update -n base -c defaults conda
conda create -n mlenv python=3.6 pandas scikit-learn jupyter
这将更新conda并创建一个名为mlenv的环境,该环境具有Python 3.6和熊猫,scikit-learn和Jupyter工具。使用conda安装Pandas将自动安装numpy和matplotlib。 jupyter安装将添加iPython和Jupyter Lab&Notebook。
您现在可以激活并开始编码:
conda activate mlenv
ipython -i name_of_file.py
这将执行并输入您的文件。
在文件或父文件夹的位置,您还可以运行:
jupyter lab
这将打开一个Web服务器,您可以在其中逐个单元交互式地执行代码。
希望这会有所帮助