Using Compound to match image/audio/written words

4 Ansichten (letzte 30 Tage)
Laura Pizzato
Laura Pizzato am 9 Aug. 2017
Kommentiert: Walter Roberson am 9 Aug. 2017
I'm using Psychtoolbox to built an experiment using stimuli from different modalities, grouped in different array( audio, image and written words). The item in the differents modalities has to be compound, cause 5 item will be inittialy presented and later recognized within a mixed sequence in all modalities:
I did this code
ImageList={imagelist.jpg}
wordList={words}
soundlist={soundlist.wav};
correctness=[1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2];
for k=1:38
compound{k,1}=wordList{k};
compound{k,2}=MyImages{k};
compound{k,3}=word{k};
end
randcompound= Shuffle(compound);
for k=1:38
randcompound{k,4}=correctness(k);
end
The compound works, but when I shuffle it in randcompound it mix everything.
Any suggestion?
  1 Kommentar
Walter Roberson
Walter Roberson am 9 Aug. 2017
Why not assign correctness before doing the Shuffle, so that it gets shuffled with everything else?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 9 Aug. 2017
ImageList={imagelist.jpg} %assumes imagelist is a struct array with field named 'jpg'
wordList={words}
soundlist={soundlist.wav}; %assumes soundlist is a struct array with field named 'wav'
Compound(:,1) = ImageList(:);
Compound(:,2) = wordList(:);
Compound(:,3) = soundlist(:);
Compound(:,4) = num2cell( correctness(:) );
ncomp = size(Compound, 1);
randidx = randperm(ncomp);
randcompound = compound(randidx, :);
  2 Kommentare
Laura Pizzato
Laura Pizzato am 9 Aug. 2017
It works because it mantain compound even with randomization, but It obviously mark as correct (correctness=1) only the top 5 array's compounds, e.g ant.jpg, ant.wav ant, whereas I have to mark as correct the 5 item randomly selected by the array. How could I face that?
Walter Roberson
Walter Roberson am 9 Aug. 2017
ImageList={imagelist.jpg} %assumes imagelist is a struct array with field named 'jpg'
wordList={words}
soundlist={soundlist.wav}; %assumes soundlist is a struct array with field named 'wav'
Compound(:,1) = ImageList(:);
Compound(:,2) = wordList(:);
Compound(:,3) = soundlist(:);
ncomp = size(Compound, 1);
Compound(:,4) = num2cell( correctness(randperm(ncomp)) );
randidx = randperm(ncomp);
randcompound = compound(randidx, :);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by