Anaconda / Spyder中的oct2py无法识别八度音阶

时间:2016-10-14 13:31:19

标签: python anaconda octave spyder oct2py

Windows7的

Anaconda / python ver 3.4

Octave ver 4.0.3

OCTAVE_EXECUTABLE = C:\ Users \ Heather \ Octave-4.0.3 \ bin

大家好,

我已经工作了几天,试图让Spyder使用oct2py在Anaconda工作。我想知道是否有人能告诉我在Windows机器上使用Spyder工作的正确方法?基本设置可能或者我使用了错误的包?

到目前为止,我已经使用Anaconda Cloud安装了oct2py软件包:

conda install -c conda-forge oct2py = 3.5.9

在oct2py的所有文档中,它提到需要下载Octave才能使oct2py正常工作。所以从这个页面pypi.python.org/pypi/oct2py,它提到从sourceforge获取Octave

https://sourceforge.net/projects/octave/files/Octave%20Windows%20binaries/

我从那里下载了Octave 3.6.4并且一位朋友帮助我在我的环境变量中指向它的OCTAVE_EXECUTABLE。在这一点上,我能够键入“八度音”。在命令行中,它会调出一个八度音程实例,但Spyder永远不会认出我安装了八度音程。

麦角:

来自oct2py import octave

错误:无法导入名称八度

此时我意识到sourceforge Octave说这是一个补充包,所以我卸载了Octave 3.6.4并从http://www.gnu.org/software/octave/安装了Octave 4.0.3 for windows。现在Octave在我点击应用程序时打开很好,但是命令行无法识别术语“八度音”'我觉得退后一步。我再次查看了我的env变量,Octave的新路径出现在系统变量中,我更新了OCTAVE_EXECUTABLE以指向新版本的Octave(目录中没有空格)。但是我的电脑即使在完全关机和重启后也无法识别出“八度音”。在命令行中,当我尝试运行oct2py.Oct2Py()时,Spyder仍然没有看到我有八度音。

所以在这之后我想知道是否有人在Anaconda工作但特别是使用Spyder?怎么会这样?我试图让我的python脚本打开并使用.m文件来执行一个函数并输出一个矩阵,该矩阵将在脚本中进一步用于计算。但是,如果我甚至无法识别八度,那么我就不知道如何完成这个。

代码示例:

from oct2py import Oct2Py
filename = 'filename'
oc = Oct2Py()
eph_matrix = oc.read_eph(filename)
print(eph_matrix) #nx25 matrix

如果我能让python识别Octave我可以通过导入线,我很有希望。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

OCTAVE_EXECUTABLEOCTAVE环境变量应直接指向可执行文件,而不是指向包含可执行文件的文件夹。因此,您可能希望将其设置为

OCTAVE_EXECUTABLE = C:\Users\Heather\Octave-4.0.3\bin\octave-cli.exe

另一种选择是将可执行文件作为Oct2Py的第一个输入。

from oct2py import Oct2Py
octave = Oct2Py('C:\Users\Heather\Octave-4.0.3\bin\octave-cli.exe')

此外,如果您希望能够从Windows命令提示符运行它,则需要将包含可执行文件('C:\Users\Heather\Octave-4.0.3\bin')的文件夹添加到PATH环境变量中。