使用Python运行fselect

-2 投票
4 回答
814 浏览
提问于 2025-04-17 12:41

我正在尝试在Windows 7上运行一个叫做fselect的Python脚本。你可以从这个网站下载:http://www.csie.ntu.edu.tw/~cjlin/libsvmtools/,它的名字是特征选择工具。我是在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运行,但出现了错误...

在这里输入图片描述

4 个回答

0

就像之前的回答说的,你似乎是在 Python 解释器里面错误地尝试运行这个脚本。根据你链接的页面上的说明,这个脚本并不是一个模块,而是一个独立的脚本,应该这样来运行:

Usage: ./fselect.py training_file [testing_file]
0

如果这是一个工具,你应该直接运行它,而不是把它导入到你的代码里。当然,你也不应该在Python的提示符下随便输入一些命令,即使那些命令在命令行中是有效的。

1

如果你想直接在命令提示符下运行 fselect.py,首先要确保你的电脑上已经把 Python 加入了路径变量。关于如何设置这个,可以参考这个链接:http://people.cis.ksu.edu/~schmidt/200f07/setpath.html

这个脚本还会调用 grid.py。而 grid.py 需要有 gnuplot 这个工具。所以要确保 grid.py 能正常运行,如果有必要的话,还要检查一下脚本中 svm_trainsvm_test 的路径,以及 grid.py 的路径。希望这样能解决问题。

撰写回答