ファイル名から実験条件を抽出する。

例えば、2要因の実験計画で、要因Aが2水準、要因Bが3水準だとします。

この2×3の6条件それぞれにおいて、ある画像ファイルを呈示します。プログラム側で、呈示している画像がどの条件に該当するのかを知るにはどうしたらよいでしょうか。

ひとつのアイデアとして、画像ファイルの名前の付け方を工夫する方法があります。

例えば

[ 要因Aの情報-要因Bの情報.jpg ]

というふうに、2つの要因の情報をハイフンで結ぶようにします。

そして、それぞれの水準を数字で表します。

具体的には次のようなファイル名になります。

1-1.jpg

1-2.jpg

1-3.jpg

2-1.jpg

2-2.jpg

2-3.jpg

こうしておけば、次のような方法で、ファイル名から実験条件を抽出することができます。

fileName = '1-3.jpg'
hyphenPos = strfind(fileName, '-'); % ハイフンの位置情報。
factorA = fileName(1: hyphenPos(1)-1); % ここでは1になります。
periodPos = strfind(fileName, '.'); % 拡張子のピリオドの位置情報。
factorB = fileName(hyphenPos(1)+1:periodPos(1)-1); % ここでは3になります。

factorA、factorBは文字列になりますのでご注意ください。

またこの例ではファイル名が数字になっていますが、

fileName = 'conditionA-conditionB.jpg'

のようなファイル名でも扱えます。