%Load data and make variables
%%
load('../Data/DataKjonnHogdeMorFar.mat')

kjonn=Kjonn;


%% Make vectors with hight of men and women

indexMann=find(kjonn==0);
indexKvinne=find(kjonn==1);
hogdeMann=hogde(indexMann);
hogdeKvinne=hogde(indexKvinne);

%% Finn dei som har begge foreldre og seg sjolv, og justerer kvinnehogde til mannshogde

f=find(1-isnan(hogdeMor) & (1-isnan(hogdeFar)) & (1-isnan(hogde)));
%% Hogde barn, jenter justert til gutar
hogdeBarn=hogde(f).*(1+0.08*(kjonn(f)));

%Gj.snitt hogda til foreldra. Mor*1.08
hogdeForeldre=0.5*hogdeFar(f)+0.5*1.08*hogdeMor(f);

plot(hogdeForeldre, hogdeBarn,'x')
xlabel('Hogde foreldre','FontSize',16)
ylabel('Hogde barn','FontSize',16)

%%

%% estimerer regresjonsparametra, og plotter
[b,bint,r,rint,stats]=regress(hogdeBarn,[ones(length(f),1),hogdeForeldre]);
hold
plot([160,200],[b(1)+b(2)*160, b(1)+b(2)*200],'r','LineWidth',2)

a=b(1)
bb=b(2)
sigmae=stats(4)

%% Predikerer voksenhogde for eit barn med gj.snitt foreldrehogde 182.5
x0=182.5;
ypred=a+bb*x0


%% Finn Pred.varians
Sxx=sum((hogdeForeldre-hogdeBarn).^2)
predvar=sigmae*(1+1/length(hogdeForeldre)+(x0-mean(hogdeBarn)).^2/Sxx)
sqrt(predvar)

%Finn 95% pred.intervall
nedrePI=ypred-1.96*sqrt(predvar)
ovrePI=ypred+1.96*sqrt(predvar)


%% Finn PI for mangen x0 og plottar
x0=160:1:200;
ypred=a+bb*x0;
predvar=sigmae*(1+1/length(hogdeForeldre)+(x0-mean(hogdeBarn)).^2/Sxx);
PInedre=ypred-1.96*sqrt(predvar);
PIovre=ypred+1.96*sqrt(predvar);
plot(x0,PIovre,'g')
plot(x0,PInedre,'g')
