diff options
Diffstat (limited to 'sourcecodes/parameter_learning/Predictmultipleintrvention.m')
| -rw-r--r-- | sourcecodes/parameter_learning/Predictmultipleintrvention.m | 76 |
1 files changed, 49 insertions, 27 deletions
diff --git a/sourcecodes/parameter_learning/Predictmultipleintrvention.m b/sourcecodes/parameter_learning/Predictmultipleintrvention.m index d3d509cb..1b9fa2f4 100644 --- a/sourcecodes/parameter_learning/Predictmultipleintrvention.m +++ b/sourcecodes/parameter_learning/Predictmultipleintrvention.m @@ -11,17 +11,13 @@ fvarnamefile=strcat(pre,'varname.txt'); varfile = fopen(fvarnamefile,'r'); -%nnodes=5; Std_flag=true; [labels,cases,bnet]=readInput(dfile,sfile,nnodes,Std_flag); -[bnet]=parameterLearning(bnet,cases); - -%[predict_mean,predict_sd,q_sq]=looCrossValid(bnet,cases); +[bnet]=parameterLearning(bnet,cases); fvarfile=strcat(pre,'var.txt'); -fvar = fopen(fvarfile,'r'); - +fvar = fopen(fvarfile,'r'); select_var_new = fscanf(fvar,'%d'); nm = numel(select_var_new); @@ -48,26 +44,52 @@ fvard = fopen(fvardfile,'r'); select_var_data_new = fscanf(fvard,'%f'); +means_orig = cell(1,nnodes); +stdevs_orig = cell(1,nnodes); +labels_orig = cell(1,nnodes); +%Read in original means and standard deviations +mapfile = strcat(pre,'map.txt'); +fmap = fopen(mapfile,'r'); +for i=1:nnodes + buffer = fgetl(mapfile); + temp = cell(1,4); + for j=1:4 + [next,buffer] = strtok(buffer); + temp{j} = next; + end + labels_orig{i} = temp{1}; + means_orig{i} = str2num(temp{4}); + stdevs_orig{i} = str2num(temp{3}); +end +fclose(fmap); + +%Need to map the means and stdevs to the correct labels +means = cell(1,nnodes); +stdevs = cell(1,nnodes); +%Read in labels in new order. +labelsnew = cell(1,nnodes); +mapdatafile = strcat(pre,'mapdata.txt'); +fmapdata = fopen(mapdatafile,'r'); +buffer = fgetl(fmapdata); +for i = 1:nnodes + [next,buffer ] = strtok(buffer); + labelsnew{i} = next; +end +fclose(fmapdata); +for i = 1:nnodes + for j = 1:nnodes + if strcmp(labelsnew{i},labels_orig{j}) + means{i} = means_orig{j}; + stdevs{i} = stdevs_orig{j}; + break + end + end +end + filename=strcat(pre,'net_figure_new.txt'); -drawFigureM(nnodes,bnet,labels,filename,cases,select_var_new,select_var_data_new); - -%quit force; -%marginal_nodes(engine,2) -%marginal_nodes(engine,3) -%marginal_nodes(engine,4) -%marginal_nodes(engine,5) -%evidence{1}=2; -%[engine,loglik]=enter_evidence(engine,evidence) -%marginal_nodes(engine,1) -%marginal_nodes(engine,2) -%marginal_nodes(engine,3) -%marginal_nodes(engine,4) -%marginal_nodes(engine,5) -%evidence{2}=0.6; -%evidence{1}=[]; -%[engine,loglik]=enter_evidence(engine,evidence); -%marginal_nodes(engine,3); -%marginal_nodes(engine,4); -%marginal_nodes(engine,5); -end \ No newline at end of file +drawFigureM(nnodes,bnet,labels,filename,cases,stdevs,means,select_var_new,select_var_data_new); + +writeParameters_int(pre,bnet,nnodes,labels,cases,stdevs,means,select_var_new,select_var_data_new); + +end |
