-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMBcourse_GenerateDataFile.m
More file actions
39 lines (31 loc) · 1.39 KB
/
Copy pathMBcourse_GenerateDataFile.m
File metadata and controls
39 lines (31 loc) · 1.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
%% Simulated data
% ==============
% Low-volatility experiment
design = MBcourse_GenerateTaskDesign([70 70], 0.7);
data = MBcourse_RLobs_Simulation(0.55, {'Softmax', 4}, design.feedback, 1);
volatility = 'low';
save('SimDataForCourse_LowVolatility.mat', 'data', 'design', 'volatility');
% High-volatility experiment
design = MBcourse_GenerateTaskDesign([40 20 30 50], 0.7);
data = MBcourse_RLobs_Simulation(0.55, {'Softmax', 4}, design.feedback, 1);
volatility = 'high';
save('SimDataForCourse_HighVolatility.mat', 'data', 'design', 'volatility');
%% Students' data
% ==============
% Load the data
d = load('DataForCourse_191116.mat');
% Create the design structure
design.nTrialsPerBlocks = diff([0;find(diff(d.data.prep.feedbackprob)~=0);d.data.prep.nt])';
design.pReward = d.data.prep.prob;
design.nTrials = d.data.prep.nt;
design.nBlocks = sum(diff([d.data.prep.feedbackprob;1]) ~= 0);
design.probTrial = d.data.prep.feedbackprob([find(diff(d.data.prep.feedbackprob) ~= 0);d.data.prep.nt])';
design.feedbackprob = d.data.prep.feedbackprob;
design.feedback = d.data.prep.feedback;
% Create the data structure
data.choice = d.data.choice;
data.choiceOutcome = d.data.outcome;
% This variable is empty to make sure that other scripts can work
volatility = [];
% Save these 3 variables
save('SimDataForCourse_StudentsData.mat', 'data', 'design', 'volatility');