%Load data and make variables
%%
load('../Data/StudData2014.txt')

hogde=StudData2014(:,1);
hogdeMor=StudData2014(:,2);
hogdeFar=StudData2014(:,3);
kjonn=StudData2014(:,4);
har=StudData2014(:,5);
auge=StudData2014(:,6);
Matlab=StudData2014(:,7);

%Make vectors with hight of men and women

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

% Finn dei som har begge foreldre, og justerer kvinnehogde til mannshogde
f=find(1-isnan(hogdeMor) & (1-isnan(hogdeFar)));
%Hogde barn, jenter justert til gutar
hogdeBarn=hogde(f).*(1+0.08*(kjonn(f)-1));

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

%% Plott dataforeldre-barn
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 KI for barn med gj.snitt foreldrehogde 182.5
muvar=sigmae*(1/length(hogdeForeldre)+(x0-mean(hogdeBarn)).^2/Sxx)
sqrt(muvar)

%Finn 95% KI
ypred-1.96*sqrt(muvar)
ypred+1.96*sqrt(muvar)


%% Finn KI for mangen x0 og plott
x0=160:1:200;
ypred=a+bb*x0;
muvar=sigmae*(1/length(hogdeForeldre)+(x0-mean(hogdeBarn)).^2/Sxx);
KInedre=ypred-1.96*sqrt(muvar);
KIovre=ypred+1.96*sqrt(muvar);
plot(x0,KIovre,'r--', 'LineWidth',2)

plot(x0,KInedre,'r--','LineWidth',2)

%% 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')




%% Hogde mor og hogde far

mor=hogdeMor(f);
far=hogdeFar(f);

mean(mor)
mean(far)
std(mor)
std(far)

figure
plot(far,mor,'x')

xlabel('Hogde far','FontSize',16)
ylabel('Hogde mor','FontSize',16)

%% Model for mors hogde, bruker fars hogde som forklaringsvariabel

[b,bint,r,rint,stats]=regress(mor,[ones(length(far),1),far]);
hold
plot([150,200],[b(1)+b(2)*150, b(1)+b(2)*200],'r','LineWidth',2)

%% Model for mors hogde, bruker fars hogde som forklaringsvariabel

[b,bint,r,rint,stats]=regress(far,[ones(length(far),1),mor]);




