TFCEでのestimate操作時のerror

2 ビュー (過去 30 日間)
Tomomi Nagase
Tomomi Nagase 2017 年 12 月 13 日
コメント済み: mizuki 2017 年 12 月 14 日
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 件のコメント
mizuki
mizuki 2017 年 12 月 14 日
編集済み: mizuki 2017 年 12 月 14 日
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内の関数の問題であるかの切り分けができます。

サインインしてコメントする。

回答 (1 件)

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

サインインしてコメントする。

カテゴリ

Help Center および File Exchangeアドオン についてさらに検索

Community Treasure Hunt

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

Start Hunting!