TFCEでのestimate操作時のerror

2 views (last 30 days)
Tomomi Nagase
Tomomi Nagase on 13 Dec 2017
Commented: mizuki on 14 Dec 2017
TFCEでのestimate操作時に以下のerrorが出て試行できません。どうすれば解決出来ますか? Calculating Failed 'Estimate TFCE' 未定義の関数、またはメソッド 'randperm' (タイプ'double' の入力引数)。 In file "C:\spm8\toolbox\TFCE\cg_tfce_estimate.m" (???), function "cg_tfce_estimate" at line 326.
The following modules did not run: Failed: Estimate TFCE
  1 Comment
mizuki
mizuki on 14 Dec 2017
Edited: mizuki on 14 Dec 2017
spm8をお使いのようですが、MATLABのバージョンは何を使用されていますか?
cg_tfce_estimate.m のファイルの326行目にある randperm 関数でエラーが起こっているようです。まずは randperm 関数が SPM8 を通さなくても実行できるかどうか確認してみてはいかがでしょうか。
randperm 関数が認識されているかどうかを確認するには
>> which -all randperm
を実行します。私の環境では以下のような結果になっています。
built-in (C:\Program Files\MATLAB\R2017b\toolbox\matlab\randfun\randperm)
C:\Program Files\MATLAB\R2017b\toolbox\matlab\randfun\@RandStream\randperm.m % RandStream method
C:\Program Files\MATLAB\R2017b\toolbox\distcomp\gpu\@gpuArray\randperm.m % gpuArray method
また、例えば以下のようなコマンドを実行して、実際に問題なく結果が返ってくるかどうかの確認もしてみてください。
>> randperm(3)
これにより、randperm 自体の問題であるか、SPM8内の関数の問題であるかの切り分けができます。

Sign in to comment.

Answers (1)

Tomomi Nagase
Tomomi Nagase on 14 Dec 2017
お忙しい中、返信をして頂き、誠に有難うございます。MATLABのバージョンは2008bまたは2009aを使用しています。 MATLABで直接randpermの関数入力を致しましたが、以下のエラーメッセージが出てしまっています。MATLABでrandperm 関数が認識されていません。お手数をおかけして大変申し訳ございませんが、解決方法を教えて頂ければ有難く存じます。
>> which -all randperm 'randperm' が見つかりません。 >> randperm(3) ??? 未定義の関数、またはメソッド 'randperm' (タイプ'double' の入力引数)。
>>
  1 Comment
mizuki
mizuki on 14 Dec 2017
randperm 関数が認識されていないのが問題のようですね。 以下コマンドを実行して、パスを初期化してみてはどうでしょうか。
>> restoredefaultpath; matlabrc
できればバージョンアップもお願いします :) 2008年のものは、official にはサポート対象外です。

Sign in to comment.

Categories

Find more on アドオン in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!