<div dir="ltr">Hi Nick,<div><br></div><div>Switching to an earlier version of SWIG works for me. I had problems with SWIG 3.0.5, but when I switched to SWIG 3.0.4 the problem was solved. I installed SWIG using Homebrew, which should work in the same way as installing from source.</div><div><br></div><div>The error message I talked about with CLANG still appears while running `python setup.py build_ext`. I guess it's not related to this issue. The message is:</div><div>#### ['clang', '-fno-strict-aliasing', '-fno-common', '-dynamic', '-g', '-O2', '-DNDEBUG', '-g', '-fwrapv', '-O3', '-Wall', '-Wstrict-prototypes'] #######</div><div>Missing compiler_cxx fix for UnixCCompiler</div><div><br></div><div>Best,</div><div>Feilong<br><br><div class="gmail_quote"><div dir="ltr">On Sun, Jul 19, 2015 at 9:44 AM <<a href="mailto:pkg-exppsy-pymvpa-request@lists.alioth.debian.org">pkg-exppsy-pymvpa-request@lists.alioth.debian.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Send Pkg-ExpPsy-PyMVPA mailing list submissions to<br>
<a href="mailto:pkg-exppsy-pymvpa@lists.alioth.debian.org" target="_blank">pkg-exppsy-pymvpa@lists.alioth.debian.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
<a href="http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa" rel="noreferrer" target="_blank">http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa</a><br>
<br>
or, via email, send a message with subject or body 'help' to<br>
<a href="mailto:pkg-exppsy-pymvpa-request@lists.alioth.debian.org" target="_blank">pkg-exppsy-pymvpa-request@lists.alioth.debian.org</a><br>
<br>
You can reach the person managing the list at<br>
<a href="mailto:pkg-exppsy-pymvpa-owner@lists.alioth.debian.org" target="_blank">pkg-exppsy-pymvpa-owner@lists.alioth.debian.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than "Re: Contents of Pkg-ExpPsy-PyMVPA digest..."<br>
Today's Topics:<br>
<br>
1. Re: LinearCSVMC not found in PyMVPA-upstream-2.4.0 release<br>
(Nick Oosterhof)<br>
<br><br><br>---------- Forwarded message ----------<br>From: Nick Oosterhof <<a href="mailto:n.n.oosterhof@googlemail.com" target="_blank">n.n.oosterhof@googlemail.com</a>><br>To: Development and support of PyMVPA <<a href="mailto:pkg-exppsy-pymvpa@lists.alioth.debian.org" target="_blank">pkg-exppsy-pymvpa@lists.alioth.debian.org</a>><br>Cc: <br>Date: Sun, 19 Jul 2015 15:44:23 +0200<br>Subject: Re: [pymvpa] LinearCSVMC not found in PyMVPA-upstream-2.4.0 release<br><br>
> On 15 Jul 2015, at 18:46, Feilong Ma <<a href="mailto:mafeilong@gmail.com" target="_blank">mafeilong@gmail.com</a>> wrote:<br>
><br>
> I had a similar problem while installing PyMVPA on Mac OS (10.10.4). I think the problem is related to this line:<br>
> <a href="https://github.com/PyMVPA/PyMVPA/blob/master/mvpa2/clfs/libsvmc/_svm.py#L22" rel="noreferrer" target="_blank">https://github.com/PyMVPA/PyMVPA/blob/master/mvpa2/clfs/libsvmc/_svm.py#L22</a><br>
><br>
> When I tried to run this line in ipython<br>
> from mvpa2.clfs.libsvmc._svmc import C_SVC, NU_SVC, ONE_CLASS, EPSILON_SVR<br>
> What I got is:<br>
> ImportError: cannot import name C_SVC<br>
<br>
I get the same error. Briefly (see below for details), it seems due to a change in SWIG, with later versions giving issues.<br>
<br>
When running "python setup.py build_ext” and copying over the .o and .so files from the build directory to PyMVPA’s root directory (across the corresponding subdirectories), the following reproduces the error directly:<br>
<br>
python -c "from mvpa2.clfs.libsvmc._svmc import C_SVC”<br>
<br>
Strangely enough, the following works for the failing PyMVPA installation (but not for the working one):<br>
<br>
python -c "from mvpa2.clfs.libsvmc._svmc import C_SVC_swigconstant”<br>
<br>
Digging a bit further, the mvpa2/clfs/libsvmc/svmc.py file differs between my “working” (generated using SWIG 3.0.2) and “failing” (SWIG 3.0.6) PyMVPA setup. One difference is that the working version has contents such as<br>
<br>
C_SVC = _svmc.C_SVC<br>
<br>
whereas the failing version has extra lines that includes “swigconstant”<br>
<br>
_svmc.C_SVC_swigconstant(_svmc)<br>
C_SVC = _svmc.C_SVC<br>
<br>
(For completeness I’m including the full content of both versions below. )<br>
<br>
Tracing this back further, I compiled swig from source, both for the latest version on github and for version 3.0.0 (version 3.0.2 gave an error when compiling). When using 3.0.0, the import works fine; with 3.0.6 or the latest (3.0.7 development) it breaks.<br>
<br>
><br>
> I guess the problem might be related to compiling LibSVM. I vaguely remember there was some error messages with CLANG blah blah.<br>
<br>
I installed GCC 5.1 and get the same problem as when using CLANG.<br>
<br>
To summarize, the following worked for me to get libsvm to work on OS X Yosemite:<br>
<br>
- clone swig from <a href="https://github.com/swig/swig" rel="noreferrer" target="_blank">https://github.com/swig/swig</a>, then “git checkout -tag tags/tags/rel-3.0.0”<br>
- in the swig directory, run “autoconf && ./configure && make && sudo make install” (although it gives an error when installing the man-pages due to missing yodl2man, the binaries are installed fine). This requires autoconf, automake and libconf.<br>
- in the PyMVPA directory, run "python setup.py build_ext”<br>
- copy the .so and .o files from the build directory to the PyMVPA root directory, for example in the PyMVPA root directory do "for ext in .so .o; do for i in `find build -iname "*${ext}"`; do j=`echo $i | cut -f3- -d/`; cp $i $j; done; done”<br>
<br>
If anyone can confirm that using an earlier version of SWIG fixes the problem, that would be great. In that case I can also raise the issue with the developers.<br>
<br>
<br>
<br>
(Below: contents of mvpa2/clfs/libsvmc/svmc.py for working and failing libsvm in PyMVPA)<br>
<br>
################<br>
# *Failing* mvpa2/clfs/libsvmc/svmc.py<br>
################<br>
<br>
# This file was automatically generated by SWIG (<a href="http://www.swig.org" rel="noreferrer" target="_blank">http://www.swig.org</a>).<br>
# Version 3.0.6<br>
#<br>
# Do not make changes to this file unless you know what you are doing--modify<br>
# the SWIG interface file instead.<br>
<br>
<br>
<br>
<br>
<br>
from sys import version_info<br>
if version_info >= (2, 6, 0):<br>
def swig_import_helper():<br>
from os.path import dirname<br>
import imp<br>
fp = None<br>
try:<br>
fp, pathname, description = imp.find_module('_svmc', [dirname(__file__)])<br>
except ImportError:<br>
import _svmc<br>
return _svmc<br>
if fp is not None:<br>
try:<br>
_mod = imp.load_module('_svmc', fp, pathname, description)<br>
finally:<br>
fp.close()<br>
return _mod<br>
_svmc = swig_import_helper()<br>
del swig_import_helper<br>
else:<br>
import _svmc<br>
del version_info<br>
try:<br>
_swig_property = property<br>
except NameError:<br>
pass # Python < 2.2 doesn't have 'property'.<br>
<br>
<br>
def _swig_setattr_nondynamic(self, class_type, name, value, static=1):<br>
if (name == "thisown"):<br>
return self.this.own(value)<br>
if (name == "this"):<br>
if type(value).__name__ == 'SwigPyObject':<br>
self.__dict__[name] = value<br>
return<br>
method = class_type.__swig_setmethods__.get(name, None)<br>
if method:<br>
return method(self, value)<br>
if (not static):<br>
if _newclass:<br>
object.__setattr__(self, name, value)<br>
else:<br>
self.__dict__[name] = value<br>
else:<br>
raise AttributeError("You cannot add attributes to %s" % self)<br>
<br>
<br>
def _swig_setattr(self, class_type, name, value):<br>
return _swig_setattr_nondynamic(self, class_type, name, value, 0)<br>
<br>
<br>
def _swig_getattr_nondynamic(self, class_type, name, static=1):<br>
if (name == "thisown"):<br>
return self.this.own()<br>
method = class_type.__swig_getmethods__.get(name, None)<br>
if method:<br>
return method(self)<br>
if (not static):<br>
return object.__getattr__(self, name)<br>
else:<br>
raise AttributeError(name)<br>
<br>
def _swig_getattr(self, class_type, name):<br>
return _swig_getattr_nondynamic(self, class_type, name, 0)<br>
<br>
<br>
def _swig_repr(self):<br>
try:<br>
strthis = "proxy of " + self.this.__repr__()<br>
except:<br>
strthis = ""<br>
return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)<br>
<br>
try:<br>
_object = object<br>
_newclass = 1<br>
except AttributeError:<br>
class _object:<br>
pass<br>
_newclass = 0<br>
<br>
<br>
<br>
_svmc.__version___swigconstant(_svmc)<br>
__version__ = _svmc.__version__<br>
<br>
_svmc.C_SVC_swigconstant(_svmc)<br>
C_SVC = _svmc.C_SVC<br>
<br>
_svmc.NU_SVC_swigconstant(_svmc)<br>
NU_SVC = _svmc.NU_SVC<br>
<br>
_svmc.ONE_CLASS_swigconstant(_svmc)<br>
ONE_CLASS = _svmc.ONE_CLASS<br>
<br>
_svmc.EPSILON_SVR_swigconstant(_svmc)<br>
EPSILON_SVR = _svmc.EPSILON_SVR<br>
<br>
_svmc.NU_SVR_swigconstant(_svmc)<br>
NU_SVR = _svmc.NU_SVR<br>
<br>
_svmc.LINEAR_swigconstant(_svmc)<br>
LINEAR = _svmc.LINEAR<br>
<br>
_svmc.POLY_swigconstant(_svmc)<br>
POLY = _svmc.POLY<br>
<br>
_svmc.RBF_swigconstant(_svmc)<br>
RBF = _svmc.RBF<br>
<br>
_svmc.SIGMOID_swigconstant(_svmc)<br>
SIGMOID = _svmc.SIGMOID<br>
<br>
_svmc.PRECOMPUTED_swigconstant(_svmc)<br>
PRECOMPUTED = _svmc.PRECOMPUTED<br>
class svm_parameter(_object):<br>
__swig_setmethods__ = {}<br>
__setattr__ = lambda self, name, value: _swig_setattr(self, svm_parameter, name, value)<br>
__swig_getmethods__ = {}<br>
__getattr__ = lambda self, name: _swig_getattr(self, svm_parameter, name)<br>
__repr__ = _swig_repr<br>
__swig_setmethods__["svm_type"] = _svmc.svm_parameter_svm_type_set<br>
__swig_getmethods__["svm_type"] = _svmc.svm_parameter_svm_type_get<br>
if _newclass:<br>
svm_type = _swig_property(_svmc.svm_parameter_svm_type_get, _svmc.svm_parameter_svm_type_set)<br>
__swig_setmethods__["kernel_type"] = _svmc.svm_parameter_kernel_type_set<br>
__swig_getmethods__["kernel_type"] = _svmc.svm_parameter_kernel_type_get<br>
if _newclass:<br>
kernel_type = _swig_property(_svmc.svm_parameter_kernel_type_get, _svmc.svm_parameter_kernel_type_set)<br>
__swig_setmethods__["degree"] = _svmc.svm_parameter_degree_set<br>
__swig_getmethods__["degree"] = _svmc.svm_parameter_degree_get<br>
if _newclass:<br>
degree = _swig_property(_svmc.svm_parameter_degree_get, _svmc.svm_parameter_degree_set)<br>
__swig_setmethods__["gamma"] = _svmc.svm_parameter_gamma_set<br>
__swig_getmethods__["gamma"] = _svmc.svm_parameter_gamma_get<br>
if _newclass:<br>
gamma = _swig_property(_svmc.svm_parameter_gamma_get, _svmc.svm_parameter_gamma_set)<br>
__swig_setmethods__["coef0"] = _svmc.svm_parameter_coef0_set<br>
__swig_getmethods__["coef0"] = _svmc.svm_parameter_coef0_get<br>
if _newclass:<br>
coef0 = _swig_property(_svmc.svm_parameter_coef0_get, _svmc.svm_parameter_coef0_set)<br>
__swig_setmethods__["cache_size"] = _svmc.svm_parameter_cache_size_set<br>
__swig_getmethods__["cache_size"] = _svmc.svm_parameter_cache_size_get<br>
if _newclass:<br>
cache_size = _swig_property(_svmc.svm_parameter_cache_size_get, _svmc.svm_parameter_cache_size_set)<br>
__swig_setmethods__["eps"] = _svmc.svm_parameter_eps_set<br>
__swig_getmethods__["eps"] = _svmc.svm_parameter_eps_get<br>
if _newclass:<br>
eps = _swig_property(_svmc.svm_parameter_eps_get, _svmc.svm_parameter_eps_set)<br>
__swig_setmethods__["C"] = _svmc.svm_parameter_C_set<br>
__swig_getmethods__["C"] = _svmc.svm_parameter_C_get<br>
if _newclass:<br>
C = _swig_property(_svmc.svm_parameter_C_get, _svmc.svm_parameter_C_set)<br>
__swig_setmethods__["nr_weight"] = _svmc.svm_parameter_nr_weight_set<br>
__swig_getmethods__["nr_weight"] = _svmc.svm_parameter_nr_weight_get<br>
if _newclass:<br>
nr_weight = _swig_property(_svmc.svm_parameter_nr_weight_get, _svmc.svm_parameter_nr_weight_set)<br>
__swig_setmethods__["weight_label"] = _svmc.svm_parameter_weight_label_set<br>
__swig_getmethods__["weight_label"] = _svmc.svm_parameter_weight_label_get<br>
if _newclass:<br>
weight_label = _swig_property(_svmc.svm_parameter_weight_label_get, _svmc.svm_parameter_weight_label_set)<br>
__swig_setmethods__["weight"] = _svmc.svm_parameter_weight_set<br>
__swig_getmethods__["weight"] = _svmc.svm_parameter_weight_get<br>
if _newclass:<br>
weight = _swig_property(_svmc.svm_parameter_weight_get, _svmc.svm_parameter_weight_set)<br>
__swig_setmethods__["nu"] = _svmc.svm_parameter_nu_set<br>
__swig_getmethods__["nu"] = _svmc.svm_parameter_nu_get<br>
if _newclass:<br>
nu = _swig_property(_svmc.svm_parameter_nu_get, _svmc.svm_parameter_nu_set)<br>
__swig_setmethods__["p"] = _svmc.svm_parameter_p_set<br>
__swig_getmethods__["p"] = _svmc.svm_parameter_p_get<br>
if _newclass:<br>
p = _swig_property(_svmc.svm_parameter_p_get, _svmc.svm_parameter_p_set)<br>
__swig_setmethods__["shrinking"] = _svmc.svm_parameter_shrinking_set<br>
__swig_getmethods__["shrinking"] = _svmc.svm_parameter_shrinking_get<br>
if _newclass:<br>
shrinking = _swig_property(_svmc.svm_parameter_shrinking_get, _svmc.svm_parameter_shrinking_set)<br>
__swig_setmethods__["probability"] = _svmc.svm_parameter_probability_set<br>
__swig_getmethods__["probability"] = _svmc.svm_parameter_probability_get<br>
if _newclass:<br>
probability = _swig_property(_svmc.svm_parameter_probability_get, _svmc.svm_parameter_probability_set)<br>
<br>
def __init__(self):<br>
this = _svmc.new_svm_parameter()<br>
try:<br>
self.this.append(this)<br>
except:<br>
self.this = this<br>
__swig_destroy__ = _svmc.delete_svm_parameter<br>
__del__ = lambda self: None<br>
svm_parameter_swigregister = _svmc.svm_parameter_swigregister<br>
svm_parameter_swigregister(svm_parameter)<br>
<br>
class svm_problem(_object):<br>
__swig_setmethods__ = {}<br>
__setattr__ = lambda self, name, value: _swig_setattr(self, svm_problem, name, value)<br>
__swig_getmethods__ = {}<br>
__getattr__ = lambda self, name: _swig_getattr(self, svm_problem, name)<br>
__repr__ = _swig_repr<br>
__swig_setmethods__["l"] = _svmc.svm_problem_l_set<br>
__swig_getmethods__["l"] = _svmc.svm_problem_l_get<br>
if _newclass:<br>
l = _swig_property(_svmc.svm_problem_l_get, _svmc.svm_problem_l_set)<br>
__swig_setmethods__["y"] = _svmc.svm_problem_y_set<br>
__swig_getmethods__["y"] = _svmc.svm_problem_y_get<br>
if _newclass:<br>
y = _swig_property(_svmc.svm_problem_y_get, _svmc.svm_problem_y_set)<br>
__swig_setmethods__["x"] = _svmc.svm_problem_x_set<br>
__swig_getmethods__["x"] = _svmc.svm_problem_x_get<br>
if _newclass:<br>
x = _swig_property(_svmc.svm_problem_x_get, _svmc.svm_problem_x_set)<br>
<br>
def __init__(self):<br>
this = _svmc.new_svm_problem()<br>
try:<br>
self.this.append(this)<br>
except:<br>
self.this = this<br>
__swig_destroy__ = _svmc.delete_svm_problem<br>
__del__ = lambda self: None<br>
svm_problem_swigregister = _svmc.svm_problem_swigregister<br>
svm_problem_swigregister(svm_problem)<br>
<br>
class svm_model(_object):<br>
__swig_setmethods__ = {}<br>
__setattr__ = lambda self, name, value: _swig_setattr(self, svm_model, name, value)<br>
__swig_getmethods__ = {}<br>
__getattr__ = lambda self, name: _swig_getattr(self, svm_model, name)<br>
__repr__ = _swig_repr<br>
__swig_setmethods__["param"] = _svmc.svm_model_param_set<br>
__swig_getmethods__["param"] = _svmc.svm_model_param_get<br>
if _newclass:<br>
param = _swig_property(_svmc.svm_model_param_get, _svmc.svm_model_param_set)<br>
__swig_setmethods__["nr_class"] = _svmc.svm_model_nr_class_set<br>
__swig_getmethods__["nr_class"] = _svmc.svm_model_nr_class_get<br>
if _newclass:<br>
nr_class = _swig_property(_svmc.svm_model_nr_class_get, _svmc.svm_model_nr_class_set)<br>
__swig_setmethods__["l"] = _svmc.svm_model_l_set<br>
__swig_getmethods__["l"] = _svmc.svm_model_l_get<br>
if _newclass:<br>
l = _swig_property(_svmc.svm_model_l_get, _svmc.svm_model_l_set)<br>
__swig_setmethods__["SV"] = _svmc.svm_model_SV_set<br>
__swig_getmethods__["SV"] = _svmc.svm_model_SV_get<br>
if _newclass:<br>
SV = _swig_property(_svmc.svm_model_SV_get, _svmc.svm_model_SV_set)<br>
__swig_setmethods__["sv_coef"] = _svmc.svm_model_sv_coef_set<br>
__swig_getmethods__["sv_coef"] = _svmc.svm_model_sv_coef_get<br>
if _newclass:<br>
sv_coef = _swig_property(_svmc.svm_model_sv_coef_get, _svmc.svm_model_sv_coef_set)<br>
__swig_setmethods__["rho"] = _svmc.svm_model_rho_set<br>
__swig_getmethods__["rho"] = _svmc.svm_model_rho_get<br>
if _newclass:<br>
rho = _swig_property(_svmc.svm_model_rho_get, _svmc.svm_model_rho_set)<br>
__swig_setmethods__["probA"] = _svmc.svm_model_probA_set<br>
__swig_getmethods__["probA"] = _svmc.svm_model_probA_get<br>
if _newclass:<br>
probA = _swig_property(_svmc.svm_model_probA_get, _svmc.svm_model_probA_set)<br>
__swig_setmethods__["probB"] = _svmc.svm_model_probB_set<br>
__swig_getmethods__["probB"] = _svmc.svm_model_probB_get<br>
if _newclass:<br>
probB = _swig_property(_svmc.svm_model_probB_get, _svmc.svm_model_probB_set)<br>
__swig_setmethods__["label"] = _svmc.svm_model_label_set<br>
__swig_getmethods__["label"] = _svmc.svm_model_label_get<br>
if _newclass:<br>
label = _swig_property(_svmc.svm_model_label_get, _svmc.svm_model_label_set)<br>
__swig_setmethods__["nSV"] = _svmc.svm_model_nSV_set<br>
__swig_getmethods__["nSV"] = _svmc.svm_model_nSV_get<br>
if _newclass:<br>
nSV = _swig_property(_svmc.svm_model_nSV_get, _svmc.svm_model_nSV_set)<br>
__swig_setmethods__["free_sv"] = _svmc.svm_model_free_sv_set<br>
__swig_getmethods__["free_sv"] = _svmc.svm_model_free_sv_get<br>
if _newclass:<br>
free_sv = _swig_property(_svmc.svm_model_free_sv_get, _svmc.svm_model_free_sv_set)<br>
<br>
def __init__(self):<br>
this = _svmc.new_svm_model()<br>
try:<br>
self.this.append(this)<br>
except:<br>
self.this = this<br>
__swig_destroy__ = _svmc.delete_svm_model<br>
__del__ = lambda self: None<br>
svm_model_swigregister = _svmc.svm_model_swigregister<br>
svm_model_swigregister(svm_model)<br>
<br>
<br>
def svm_set_verbosity(verbosity_flag):<br>
return _svmc.svm_set_verbosity(verbosity_flag)<br>
svm_set_verbosity = _svmc.svm_set_verbosity<br>
<br>
def svm_train(prob, param):<br>
return _svmc.svm_train(prob, param)<br>
svm_train = _svmc.svm_train<br>
<br>
def svm_cross_validation(prob, param, nr_fold, target):<br>
return _svmc.svm_cross_validation(prob, param, nr_fold, target)<br>
svm_cross_validation = _svmc.svm_cross_validation<br>
<br>
def svm_save_model(model_file_name, model):<br>
return _svmc.svm_save_model(model_file_name, model)<br>
svm_save_model = _svmc.svm_save_model<br>
<br>
def svm_load_model(model_file_name):<br>
return _svmc.svm_load_model(model_file_name)<br>
svm_load_model = _svmc.svm_load_model<br>
<br>
def svm_get_svm_type(model):<br>
return _svmc.svm_get_svm_type(model)<br>
svm_get_svm_type = _svmc.svm_get_svm_type<br>
<br>
def svm_get_nr_class(model):<br>
return _svmc.svm_get_nr_class(model)<br>
svm_get_nr_class = _svmc.svm_get_nr_class<br>
<br>
def svm_get_labels(model, label):<br>
return _svmc.svm_get_labels(model, label)<br>
svm_get_labels = _svmc.svm_get_labels<br>
<br>
def svm_get_svr_probability(model):<br>
return _svmc.svm_get_svr_probability(model)<br>
svm_get_svr_probability = _svmc.svm_get_svr_probability<br>
<br>
def svm_predict_values(model, x, decvalue):<br>
return _svmc.svm_predict_values(model, x, decvalue)<br>
svm_predict_values = _svmc.svm_predict_values<br>
<br>
def svm_predict(model, x):<br>
return _svmc.svm_predict(model, x)<br>
svm_predict = _svmc.svm_predict<br>
<br>
def svm_predict_probability(model, x, prob_estimates):<br>
return _svmc.svm_predict_probability(model, x, prob_estimates)<br>
svm_predict_probability = _svmc.svm_predict_probability<br>
<br>
def svm_check_parameter(prob, param):<br>
return _svmc.svm_check_parameter(prob, param)<br>
svm_check_parameter = _svmc.svm_check_parameter<br>
<br>
def svm_check_probability_model(model):<br>
return _svmc.svm_check_probability_model(model)<br>
svm_check_probability_model = _svmc.svm_check_probability_model<br>
<br>
def svm_node_matrix2numpy_array(matrix, rows, cols):<br>
return _svmc.svm_node_matrix2numpy_array(matrix, rows, cols)<br>
svm_node_matrix2numpy_array = _svmc.svm_node_matrix2numpy_array<br>
<br>
def doubleppcarray2numpy_array(data, rows, cols):<br>
return _svmc.doubleppcarray2numpy_array(data, rows, cols)<br>
doubleppcarray2numpy_array = _svmc.doubleppcarray2numpy_array<br>
<br>
def new_int(nelements):<br>
return _svmc.new_int(nelements)<br>
new_int = _svmc.new_int<br>
<br>
def delete_int(ary):<br>
return _svmc.delete_int(ary)<br>
delete_int = _svmc.delete_int<br>
<br>
def int_getitem(ary, index):<br>
return _svmc.int_getitem(ary, index)<br>
int_getitem = _svmc.int_getitem<br>
<br>
def int_setitem(ary, index, value):<br>
return _svmc.int_setitem(ary, index, value)<br>
int_setitem = _svmc.int_setitem<br>
<br>
def new_double(nelements):<br>
return _svmc.new_double(nelements)<br>
new_double = _svmc.new_double<br>
<br>
def delete_double(ary):<br>
return _svmc.delete_double(ary)<br>
delete_double = _svmc.delete_double<br>
<br>
def double_getitem(ary, index):<br>
return _svmc.double_getitem(ary, index)<br>
double_getitem = _svmc.double_getitem<br>
<br>
def double_setitem(ary, index, value):<br>
return _svmc.double_setitem(ary, index, value)<br>
double_setitem = _svmc.double_setitem<br>
<br>
def svm_node_array(size):<br>
return _svmc.svm_node_array(size)<br>
svm_node_array = _svmc.svm_node_array<br>
<br>
def svm_node_array_set(*args):<br>
return _svmc.svm_node_array_set(*args)<br>
svm_node_array_set = _svmc.svm_node_array_set<br>
<br>
def svm_node_array_destroy(array):<br>
return _svmc.svm_node_array_destroy(array)<br>
svm_node_array_destroy = _svmc.svm_node_array_destroy<br>
<br>
def svm_node_matrix(size):<br>
return _svmc.svm_node_matrix(size)<br>
svm_node_matrix = _svmc.svm_node_matrix<br>
<br>
def svm_node_matrix_set(matrix, i, array):<br>
return _svmc.svm_node_matrix_set(matrix, i, array)<br>
svm_node_matrix_set = _svmc.svm_node_matrix_set<br>
<br>
def svm_node_matrix_destroy(matrix):<br>
return _svmc.svm_node_matrix_destroy(matrix)<br>
svm_node_matrix_destroy = _svmc.svm_node_matrix_destroy<br>
<br>
def svm_destroy_model_helper(model_ptr):<br>
return _svmc.svm_destroy_model_helper(model_ptr)<br>
svm_destroy_model_helper = _svmc.svm_destroy_model_helper<br>
# This file is compatible with both classic and new-style classes.<br>
<br>
<br>
<br>
<br>
<br>
################<br>
# *Working* mvpa2/clfs/libsvmc/svmc.py<br>
################<br>
<br>
<br>
# This file was automatically generated by SWIG (<a href="http://www.swig.org" rel="noreferrer" target="_blank">http://www.swig.org</a>).<br>
# Version 3.0.2<br>
#<br>
# Do not make changes to this file unless you know what you are doing--modify<br>
# the SWIG interface file instead.<br>
<br>
<br>
<br>
<br>
<br>
from sys import version_info<br>
if version_info >= (2,6,0):<br>
def swig_import_helper():<br>
from os.path import dirname<br>
import imp<br>
fp = None<br>
try:<br>
fp, pathname, description = imp.find_module('_svmc', [dirname(__file__)])<br>
except ImportError:<br>
import _svmc<br>
return _svmc<br>
if fp is not None:<br>
try:<br>
_mod = imp.load_module('_svmc', fp, pathname, description)<br>
finally:<br>
fp.close()<br>
return _mod<br>
_svmc = swig_import_helper()<br>
del swig_import_helper<br>
else:<br>
import _svmc<br>
del version_info<br>
try:<br>
_swig_property = property<br>
except NameError:<br>
pass # Python < 2.2 doesn't have 'property'.<br>
def _swig_setattr_nondynamic(self,class_type,name,value,static=1):<br>
if (name == "thisown"): return self.this.own(value)<br>
if (name == "this"):<br>
if type(value).__name__ == 'SwigPyObject':<br>
self.__dict__[name] = value<br>
return<br>
method = class_type.__swig_setmethods__.get(name,None)<br>
if method: return method(self,value)<br>
if (not static):<br>
self.__dict__[name] = value<br>
else:<br>
raise AttributeError("You cannot add attributes to %s" % self)<br>
<br>
def _swig_setattr(self,class_type,name,value):<br>
return _swig_setattr_nondynamic(self,class_type,name,value,0)<br>
<br>
def _swig_getattr(self,class_type,name):<br>
if (name == "thisown"): return self.this.own()<br>
method = class_type.__swig_getmethods__.get(name,None)<br>
if method: return method(self)<br>
raise AttributeError(name)<br>
<br>
def _swig_repr(self):<br>
try: strthis = "proxy of " + self.this.__repr__()<br>
except: strthis = ""<br>
return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)<br>
<br>
try:<br>
_object = object<br>
_newclass = 1<br>
except AttributeError:<br>
class _object : pass<br>
_newclass = 0<br>
<br>
<br>
__version__ = _svmc.__version__<br>
C_SVC = _svmc.C_SVC<br>
NU_SVC = _svmc.NU_SVC<br>
ONE_CLASS = _svmc.ONE_CLASS<br>
EPSILON_SVR = _svmc.EPSILON_SVR<br>
NU_SVR = _svmc.NU_SVR<br>
LINEAR = _svmc.LINEAR<br>
POLY = _svmc.POLY<br>
RBF = _svmc.RBF<br>
SIGMOID = _svmc.SIGMOID<br>
PRECOMPUTED = _svmc.PRECOMPUTED<br>
class svm_parameter(_object):<br>
__swig_setmethods__ = {}<br>
__setattr__ = lambda self, name, value: _swig_setattr(self, svm_parameter, name, value)<br>
__swig_getmethods__ = {}<br>
__getattr__ = lambda self, name: _swig_getattr(self, svm_parameter, name)<br>
__repr__ = _swig_repr<br>
__swig_setmethods__["svm_type"] = _svmc.svm_parameter_svm_type_set<br>
__swig_getmethods__["svm_type"] = _svmc.svm_parameter_svm_type_get<br>
if _newclass:svm_type = _swig_property(_svmc.svm_parameter_svm_type_get, _svmc.svm_parameter_svm_type_set)<br>
__swig_setmethods__["kernel_type"] = _svmc.svm_parameter_kernel_type_set<br>
__swig_getmethods__["kernel_type"] = _svmc.svm_parameter_kernel_type_get<br>
if _newclass:kernel_type = _swig_property(_svmc.svm_parameter_kernel_type_get, _svmc.svm_parameter_kernel_type_set)<br>
__swig_setmethods__["degree"] = _svmc.svm_parameter_degree_set<br>
__swig_getmethods__["degree"] = _svmc.svm_parameter_degree_get<br>
if _newclass:degree = _swig_property(_svmc.svm_parameter_degree_get, _svmc.svm_parameter_degree_set)<br>
__swig_setmethods__["gamma"] = _svmc.svm_parameter_gamma_set<br>
__swig_getmethods__["gamma"] = _svmc.svm_parameter_gamma_get<br>
if _newclass:gamma = _swig_property(_svmc.svm_parameter_gamma_get, _svmc.svm_parameter_gamma_set)<br>
__swig_setmethods__["coef0"] = _svmc.svm_parameter_coef0_set<br>
__swig_getmethods__["coef0"] = _svmc.svm_parameter_coef0_get<br>
if _newclass:coef0 = _swig_property(_svmc.svm_parameter_coef0_get, _svmc.svm_parameter_coef0_set)<br>
__swig_setmethods__["cache_size"] = _svmc.svm_parameter_cache_size_set<br>
__swig_getmethods__["cache_size"] = _svmc.svm_parameter_cache_size_get<br>
if _newclass:cache_size = _swig_property(_svmc.svm_parameter_cache_size_get, _svmc.svm_parameter_cache_size_set)<br>
__swig_setmethods__["eps"] = _svmc.svm_parameter_eps_set<br>
__swig_getmethods__["eps"] = _svmc.svm_parameter_eps_get<br>
if _newclass:eps = _swig_property(_svmc.svm_parameter_eps_get, _svmc.svm_parameter_eps_set)<br>
__swig_setmethods__["C"] = _svmc.svm_parameter_C_set<br>
__swig_getmethods__["C"] = _svmc.svm_parameter_C_get<br>
if _newclass:C = _swig_property(_svmc.svm_parameter_C_get, _svmc.svm_parameter_C_set)<br>
__swig_setmethods__["nr_weight"] = _svmc.svm_parameter_nr_weight_set<br>
__swig_getmethods__["nr_weight"] = _svmc.svm_parameter_nr_weight_get<br>
if _newclass:nr_weight = _swig_property(_svmc.svm_parameter_nr_weight_get, _svmc.svm_parameter_nr_weight_set)<br>
__swig_setmethods__["weight_label"] = _svmc.svm_parameter_weight_label_set<br>
__swig_getmethods__["weight_label"] = _svmc.svm_parameter_weight_label_get<br>
if _newclass:weight_label = _swig_property(_svmc.svm_parameter_weight_label_get, _svmc.svm_parameter_weight_label_set)<br>
__swig_setmethods__["weight"] = _svmc.svm_parameter_weight_set<br>
__swig_getmethods__["weight"] = _svmc.svm_parameter_weight_get<br>
if _newclass:weight = _swig_property(_svmc.svm_parameter_weight_get, _svmc.svm_parameter_weight_set)<br>
__swig_setmethods__["nu"] = _svmc.svm_parameter_nu_set<br>
__swig_getmethods__["nu"] = _svmc.svm_parameter_nu_get<br>
if _newclass:nu = _swig_property(_svmc.svm_parameter_nu_get, _svmc.svm_parameter_nu_set)<br>
__swig_setmethods__["p"] = _svmc.svm_parameter_p_set<br>
__swig_getmethods__["p"] = _svmc.svm_parameter_p_get<br>
if _newclass:p = _swig_property(_svmc.svm_parameter_p_get, _svmc.svm_parameter_p_set)<br>
__swig_setmethods__["shrinking"] = _svmc.svm_parameter_shrinking_set<br>
__swig_getmethods__["shrinking"] = _svmc.svm_parameter_shrinking_get<br>
if _newclass:shrinking = _swig_property(_svmc.svm_parameter_shrinking_get, _svmc.svm_parameter_shrinking_set)<br>
__swig_setmethods__["probability"] = _svmc.svm_parameter_probability_set<br>
__swig_getmethods__["probability"] = _svmc.svm_parameter_probability_get<br>
if _newclass:probability = _swig_property(_svmc.svm_parameter_probability_get, _svmc.svm_parameter_probability_set)<br>
def __init__(self):<br>
this = _svmc.new_svm_parameter()<br>
try: self.this.append(this)<br>
except: self.this = this<br>
__swig_destroy__ = _svmc.delete_svm_parameter<br>
__del__ = lambda self : None;<br>
svm_parameter_swigregister = _svmc.svm_parameter_swigregister<br>
svm_parameter_swigregister(svm_parameter)<br>
<br>
class svm_problem(_object):<br>
__swig_setmethods__ = {}<br>
__setattr__ = lambda self, name, value: _swig_setattr(self, svm_problem, name, value)<br>
__swig_getmethods__ = {}<br>
__getattr__ = lambda self, name: _swig_getattr(self, svm_problem, name)<br>
__repr__ = _swig_repr<br>
__swig_setmethods__["l"] = _svmc.svm_problem_l_set<br>
__swig_getmethods__["l"] = _svmc.svm_problem_l_get<br>
if _newclass:l = _swig_property(_svmc.svm_problem_l_get, _svmc.svm_problem_l_set)<br>
__swig_setmethods__["y"] = _svmc.svm_problem_y_set<br>
__swig_getmethods__["y"] = _svmc.svm_problem_y_get<br>
if _newclass:y = _swig_property(_svmc.svm_problem_y_get, _svmc.svm_problem_y_set)<br>
__swig_setmethods__["x"] = _svmc.svm_problem_x_set<br>
__swig_getmethods__["x"] = _svmc.svm_problem_x_get<br>
if _newclass:x = _swig_property(_svmc.svm_problem_x_get, _svmc.svm_problem_x_set)<br>
def __init__(self):<br>
this = _svmc.new_svm_problem()<br>
try: self.this.append(this)<br>
except: self.this = this<br>
__swig_destroy__ = _svmc.delete_svm_problem<br>
__del__ = lambda self : None;<br>
svm_problem_swigregister = _svmc.svm_problem_swigregister<br>
svm_problem_swigregister(svm_problem)<br>
<br>
class svm_model(_object):<br>
__swig_setmethods__ = {}<br>
__setattr__ = lambda self, name, value: _swig_setattr(self, svm_model, name, value)<br>
__swig_getmethods__ = {}<br>
__getattr__ = lambda self, name: _swig_getattr(self, svm_model, name)<br>
__repr__ = _swig_repr<br>
__swig_setmethods__["param"] = _svmc.svm_model_param_set<br>
__swig_getmethods__["param"] = _svmc.svm_model_param_get<br>
if _newclass:param = _swig_property(_svmc.svm_model_param_get, _svmc.svm_model_param_set)<br>
__swig_setmethods__["nr_class"] = _svmc.svm_model_nr_class_set<br>
__swig_getmethods__["nr_class"] = _svmc.svm_model_nr_class_get<br>
if _newclass:nr_class = _swig_property(_svmc.svm_model_nr_class_get, _svmc.svm_model_nr_class_set)<br>
__swig_setmethods__["l"] = _svmc.svm_model_l_set<br>
__swig_getmethods__["l"] = _svmc.svm_model_l_get<br>
if _newclass:l = _swig_property(_svmc.svm_model_l_get, _svmc.svm_model_l_set)<br>
__swig_setmethods__["SV"] = _svmc.svm_model_SV_set<br>
__swig_getmethods__["SV"] = _svmc.svm_model_SV_get<br>
if _newclass:SV = _swig_property(_svmc.svm_model_SV_get, _svmc.svm_model_SV_set)<br>
__swig_setmethods__["sv_coef"] = _svmc.svm_model_sv_coef_set<br>
__swig_getmethods__["sv_coef"] = _svmc.svm_model_sv_coef_get<br>
if _newclass:sv_coef = _swig_property(_svmc.svm_model_sv_coef_get, _svmc.svm_model_sv_coef_set)<br>
__swig_setmethods__["rho"] = _svmc.svm_model_rho_set<br>
__swig_getmethods__["rho"] = _svmc.svm_model_rho_get<br>
if _newclass:rho = _swig_property(_svmc.svm_model_rho_get, _svmc.svm_model_rho_set)<br>
__swig_setmethods__["probA"] = _svmc.svm_model_probA_set<br>
__swig_getmethods__["probA"] = _svmc.svm_model_probA_get<br>
if _newclass:probA = _swig_property(_svmc.svm_model_probA_get, _svmc.svm_model_probA_set)<br>
__swig_setmethods__["probB"] = _svmc.svm_model_probB_set<br>
__swig_getmethods__["probB"] = _svmc.svm_model_probB_get<br>
if _newclass:probB = _swig_property(_svmc.svm_model_probB_get, _svmc.svm_model_probB_set)<br>
__swig_setmethods__["label"] = _svmc.svm_model_label_set<br>
__swig_getmethods__["label"] = _svmc.svm_model_label_get<br>
if _newclass:label = _swig_property(_svmc.svm_model_label_get, _svmc.svm_model_label_set)<br>
__swig_setmethods__["nSV"] = _svmc.svm_model_nSV_set<br>
__swig_getmethods__["nSV"] = _svmc.svm_model_nSV_get<br>
if _newclass:nSV = _swig_property(_svmc.svm_model_nSV_get, _svmc.svm_model_nSV_set)<br>
__swig_setmethods__["free_sv"] = _svmc.svm_model_free_sv_set<br>
__swig_getmethods__["free_sv"] = _svmc.svm_model_free_sv_get<br>
if _newclass:free_sv = _swig_property(_svmc.svm_model_free_sv_get, _svmc.svm_model_free_sv_set)<br>
def __init__(self):<br>
this = _svmc.new_svm_model()<br>
try: self.this.append(this)<br>
except: self.this = this<br>
__swig_destroy__ = _svmc.delete_svm_model<br>
__del__ = lambda self : None;<br>
svm_model_swigregister = _svmc.svm_model_swigregister<br>
svm_model_swigregister(svm_model)<br>
<br>
<br>
def svm_set_verbosity(*args):<br>
return _svmc.svm_set_verbosity(*args)<br>
svm_set_verbosity = _svmc.svm_set_verbosity<br>
<br>
def svm_train(*args):<br>
return _svmc.svm_train(*args)<br>
svm_train = _svmc.svm_train<br>
<br>
def svm_cross_validation(*args):<br>
return _svmc.svm_cross_validation(*args)<br>
svm_cross_validation = _svmc.svm_cross_validation<br>
<br>
def svm_save_model(*args):<br>
return _svmc.svm_save_model(*args)<br>
svm_save_model = _svmc.svm_save_model<br>
<br>
def svm_load_model(*args):<br>
return _svmc.svm_load_model(*args)<br>
svm_load_model = _svmc.svm_load_model<br>
<br>
def svm_get_svm_type(*args):<br>
return _svmc.svm_get_svm_type(*args)<br>
svm_get_svm_type = _svmc.svm_get_svm_type<br>
<br>
def svm_get_nr_class(*args):<br>
return _svmc.svm_get_nr_class(*args)<br>
svm_get_nr_class = _svmc.svm_get_nr_class<br>
<br>
def svm_get_labels(*args):<br>
return _svmc.svm_get_labels(*args)<br>
svm_get_labels = _svmc.svm_get_labels<br>
<br>
def svm_get_svr_probability(*args):<br>
return _svmc.svm_get_svr_probability(*args)<br>
svm_get_svr_probability = _svmc.svm_get_svr_probability<br>
<br>
def svm_predict_values(*args):<br>
return _svmc.svm_predict_values(*args)<br>
svm_predict_values = _svmc.svm_predict_values<br>
<br>
def svm_predict(*args):<br>
return _svmc.svm_predict(*args)<br>
svm_predict = _svmc.svm_predict<br>
<br>
def svm_predict_probability(*args):<br>
return _svmc.svm_predict_probability(*args)<br>
svm_predict_probability = _svmc.svm_predict_probability<br>
<br>
def svm_check_parameter(*args):<br>
return _svmc.svm_check_parameter(*args)<br>
svm_check_parameter = _svmc.svm_check_parameter<br>
<br>
def svm_check_probability_model(*args):<br>
return _svmc.svm_check_probability_model(*args)<br>
svm_check_probability_model = _svmc.svm_check_probability_model<br>
<br>
def svm_node_matrix2numpy_array(*args):<br>
return _svmc.svm_node_matrix2numpy_array(*args)<br>
svm_node_matrix2numpy_array = _svmc.svm_node_matrix2numpy_array<br>
<br>
def doubleppcarray2numpy_array(*args):<br>
return _svmc.doubleppcarray2numpy_array(*args)<br>
doubleppcarray2numpy_array = _svmc.doubleppcarray2numpy_array<br>
<br>
def new_int(*args):<br>
return _svmc.new_int(*args)<br>
new_int = _svmc.new_int<br>
<br>
def delete_int(*args):<br>
return _svmc.delete_int(*args)<br>
delete_int = _svmc.delete_int<br>
<br>
def int_getitem(*args):<br>
return _svmc.int_getitem(*args)<br>
int_getitem = _svmc.int_getitem<br>
<br>
def int_setitem(*args):<br>
return _svmc.int_setitem(*args)<br>
int_setitem = _svmc.int_setitem<br>
<br>
def new_double(*args):<br>
return _svmc.new_double(*args)<br>
new_double = _svmc.new_double<br>
<br>
def delete_double(*args):<br>
return _svmc.delete_double(*args)<br>
delete_double = _svmc.delete_double<br>
<br>
def double_getitem(*args):<br>
return _svmc.double_getitem(*args)<br>
double_getitem = _svmc.double_getitem<br>
<br>
def double_setitem(*args):<br>
return _svmc.double_setitem(*args)<br>
double_setitem = _svmc.double_setitem<br>
<br>
def svm_node_array(*args):<br>
return _svmc.svm_node_array(*args)<br>
svm_node_array = _svmc.svm_node_array<br>
<br>
def svm_node_array_set(*args):<br>
return _svmc.svm_node_array_set(*args)<br>
svm_node_array_set = _svmc.svm_node_array_set<br>
<br>
def svm_node_array_destroy(*args):<br>
return _svmc.svm_node_array_destroy(*args)<br>
svm_node_array_destroy = _svmc.svm_node_array_destroy<br>
<br>
def svm_node_matrix(*args):<br>
return _svmc.svm_node_matrix(*args)<br>
svm_node_matrix = _svmc.svm_node_matrix<br>
<br>
def svm_node_matrix_set(*args):<br>
return _svmc.svm_node_matrix_set(*args)<br>
svm_node_matrix_set = _svmc.svm_node_matrix_set<br>
<br>
def svm_node_matrix_destroy(*args):<br>
return _svmc.svm_node_matrix_destroy(*args)<br>
svm_node_matrix_destroy = _svmc.svm_node_matrix_destroy<br>
<br>
def svm_destroy_model_helper(*args):<br>
return _svmc.svm_destroy_model_helper(*args)<br>
svm_destroy_model_helper = _svmc.svm_destroy_model_helper<br>
# This file is compatible with both classic and new-style classes.<br>
<br>
<br>
<br>
_______________________________________________<br>
Pkg-ExpPsy-PyMVPA mailing list<br>
<a href="mailto:Pkg-ExpPsy-PyMVPA@lists.alioth.debian.org" target="_blank">Pkg-ExpPsy-PyMVPA@lists.alioth.debian.org</a><br>
<a href="http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa" rel="noreferrer" target="_blank">http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa</a></blockquote></div></div></div>