about summary refs log tree commit diff
path: root/sourcecodes/parameter_learning/Predictmultipleintrvention.m
diff options
context:
space:
mode:
Diffstat (limited to 'sourcecodes/parameter_learning/Predictmultipleintrvention.m')
-rw-r--r--sourcecodes/parameter_learning/Predictmultipleintrvention.m76
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