Some of your voxels have a “NaN” value, perhaps due to preprocessing in SPM. FSL has a tool that will replace these values with zeros (I think), so that might resolve your issue.
Best, Mike On Sun, Aug 17, 2014 at 10:49 AM, cfygj <[email protected]> wrote: > Hi all, I’m just wondering if anyone has any advice on some ways to deal > with my problems. Here is my scipt, which was used to run my data, then > come out some error information. Could you tell me how to address its? > > Scripts: > # Import necessary modules > from os import path > import os > import numpy as N > import numpy.matlib as M > import scipy.io as sio > from mvpa2.suite import * > from mvpa2.mappers.detrend import poly_detrend > from mvpa2.datasets.mri import fmri_dataset > from mvpa2.datasets.miscfx import remove_invariant_features > > # Load fMRI data > attrs = SampleAttributes('attributes.txt') > ds = fmri_dataset(samples=('s1.nii.gz'), targets=attrs.targets, > chunks=attrs.chunks) > > # Detrend with motion correction parameter > mc = McFlirtParams('prefiltered_func_data_mcf.par') # detrend head motion > for param in mc: > ds.sa['mc_' + param] = mc[param] > res = poly_detrend(ds, opt_regs=['mc_x', 'mc_y', 'mc_z', 'mc_rot1', > 'mc_rot2', 'mc_rot3']) > > # do chunkswise linear detrending on dataset > poly_detrend(ds, polyord=1, chunks_attr='chunks') > > # do z-score dataset relative to baseline ('rest') mean > zscore(ds, chunks_attr='chunks', param_est=('targets', [0])) > > # select subdata for each trial for mvpa analysis > ds = ds[N.array([l%6 == 3 for l in ds.sa.time_indices], dtype='bool')] > ds=remove_invariant_features(ds) > > # try classifier > partitioner = NFoldPartitioner() > repeater = Repeater(count=10000) > permutator = AttributePermutator('targets', limit={'partitions': 1}, > count=1) > null_cv = CrossValidation( > clf, > ChainNode( > [partitioner, permutator], > space=partitioner.get_space()), > postproc=mean_sample()) > distr_est = MCNullDist(repeater, tail='left', measure=null_cv, > enable_ca=['dist_samples']) > cv_mc_corr = CrossValidation(clf, > partitioner, > postproc=mean_sample(), > null_dist=distr_est, > enable_ca=['stats']) > > error = cv_mc_corr(ds) > Results_Error[0,0] = error.samples > p = cv_mc_corr.ca.null_prob > print 'p', p > assert(p.shape == (1,1)) > Results_P[0,0] = p.samples[0,0] > Distribution = cv_mc_corr.null_dist.ca.dist_samples > distr_est.clean() > > > > errors: > Traceback (most recent call last): > File "mvpa_classifier.py", line 84, in <module> > error = cv_mc_corr(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/base/learner.py", line 259, > in __call__ > return super(Learner, self).__call__(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/base/node.py", line 120, in > __call__ > self._precall(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/measures/base.py", line > 118, in _precall > self.__null_dist.fit(measure, ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/clfs/stats.py", line 403, > in fit > res = measure(permuted_ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/base/learner.py", line 259, > in __call__ > return super(Learner, self).__call__(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/base/node.py", line 121, in > __call__ > result = self._call(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/measures/base.py", line > 497, in _call > return super(CrossValidation, self)._call(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/measures/base.py", line > 326, in _call > result = node(sds) > File "/usr/lib/python2.7/dist-packages/mvpa2/base/learner.py", line 259, > in __call__ > return super(Learner, self).__call__(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/base/node.py", line 121, in > __call__ > result = self._call(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/measures/base.py", line > 617, in _call > res = measure(dstest) > File "/usr/lib/python2.7/dist-packages/mvpa2/base/learner.py", line 259, > in __call__ > return super(Learner, self).__call__(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/base/node.py", line 121, in > __call__ > result = self._call(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/clfs/base.py", line 434, in > _call > pred = self.predict(ds) > File "/usr/lib/python2.7/dist-packages/mvpa2/clfs/base.py", line 47, in > wrap_samples > return fx(obj, data, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/mvpa2/clfs/base.py", line 389, in > predict > "Some input data for predict is not finite (NaN or Inf)") > ValueError: Some input data for predict is not finite (NaN or Inf) > > > > > > _______________________________________________ > Pkg-ExpPsy-PyMVPA mailing list > [email protected] > http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa >
_______________________________________________ Pkg-ExpPsy-PyMVPA mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa

