我正在尝试在Windows 7中运行这个名为fselect的python脚本。它可以从这个名为http://www.csie.ntu.edu.tw/~cjlin/libsvmtools/的网站下载,名称为Feature selection tool。我在Python 2.7.2上运行它。运行它时出现一些问题..
首先在IDLE中输入:
>>> import pprint
>>> import sys
>>> print pprint.pprint(sys.path)
>>> sys.path.append("C:\Users\HP\Documents\MATLAB\libsvm-3.11\tools")
>>> import fselect
Usage: training_file [testing_file]
然后问题是当我输入下一部分时:
试过这个:
>>> ./fselect.py TrainVec
SyntaxError: invalid syntax
接下来尝试了这个:
>>> fselect.py TrainVec
SyntaxError: invalid syntax
接下来尝试了这个:
>>> TrainVec
Traceback (most recent call last):
File "<pyshell#7>", line 1, in <module>
TrainVec
NameError: name 'TrainVec' is not defined
也试过这个:
>>> TrainVec.mat
Traceback (most recent call last):
File "<pyshell#8>", line 1, in <module>
TrainVec.mat
NameError: name 'TrainVec' is not defined
输入的正确方法是什么?需要一些指导......
尝试使用cmd运行但是有错误...
答案 0 :(得分:1)
如果您尝试直接从命令提示符运行fselect.py
,请确保将python设置为路径变量。如需指导,请阅读http://people.cis.ksu.edu/~schmidt/200f07/setpath.html。
该脚本还将调用grid.py
。 grid.py
要求gnuplot
在那里。因此,请确保grid.py
正常运行,并在必要时检查脚本中svm_train
,svm_test
的路径以及grid.py
的路径。
希望它现在可以运作。
答案 1 :(得分:0)
如果它是一个工具,你应该运行它,而不是导入它。当然,您不应该尝试在Python提示符中输入随机命令,即使它们是有效的shell命令。
答案 2 :(得分:0)
假设TrainVec是您的数据(因为您在TrainVec.mat的上下文中使用它必须是Matlab数据文件),然后在命令提示符上运行它,如下所示:
python fselect.py TrainVec.mat
./fselect.py
的示例适用于Unix系统。确保在已保存fselect.py
的目录中运行上述命令。
如果您需要编写自己的脚本来利用此.py
文件,那么我会向您here推荐一个如何执行此操作的示例。
答案 3 :(得分:0)
就像之前的回答所说,看起来你(错误地)尝试从Python解释器内部运行脚本。根据您链接到的页面上的文档,它不是一个模块,而是一个独立的脚本,应该这样运行:
Usage: ./fselect.py training_file [testing_file]