juryou<-read.table("juryouritsu.txt",header=T)
attach(juryou)
juryouM<-juryou[juryou$gender=="M",2:3]
juryouF<-juryou[juryou$gender=="F",2:3]
plot(juryouM,ylim=c(0,13000))
par(new=T)
plot(juryouF,ylim=c(0,13000),col="red",pch="+")
sa<-100000-ritsu
age<-juryou$age
y<-cbind(ritsu,sa)
result1<-glm(y~1+gender+age,family="binomial")
result<-glm(y~1+age+I(age^2)+I(age^3)+I(age^4)+I(age^5)+I(age^6)+I(age^7)+I(age^8)+I(age^9)+I(age^10)+I(age^11)+I(age^12),family=binomial)
summary(result1)
ci<-sd(result$residuals)
logit<-predict(result)
logit977<-logit+qnorm(0.977)*ci
logit99<-logit+qnorm(0.99)*ci
ritsube<-exp(logit)/(1+exp(logit))
ritsu977<-exp(logit977)/(1+exp(logit977))
ritsu99<-exp(logit99)/(1+exp(logit99))
a3060<-as.numeric(ritsube[7:14])
b3060<-as.numeric(ritsu977[7:14])
c3060<-as.numeric(ritsu99[7:14])
a2732<-seq(a3060[1],a3060[2],length=6)
a3237<-seq(a3060[2],a3060[3],length=6)
a3742<-seq(a3060[3],a3060[4],length=6)
a4247<-seq(a3060[4],a3060[5],length=6)
a4752<-seq(a3060[5],a3060[6],length=6)
a5257<-seq(a3060[6],a3060[7],length=6)
a5762<-seq(a3060[7],a3060[8],length=6)
(nyuinbe<-c(a2732[4:6],a3237[2:6],a3742[2:6],a4247[2:6],a4752[2:6],a5257[2:6],a5762[2:4]))
b2732<-seq(b3060[1],b3060[2],length=6)
b3237<-seq(b3060[2],b3060[3],length=6)
b3742<-seq(b3060[3],b3060[4],length=6)
b4247<-seq(b3060[4],b3060[5],length=6)
b4752<-seq(b3060[5],b3060[6],length=6)
b5257<-seq(b3060[6],b3060[7],length=6)
b5762<-seq(b3060[7],b3060[8],length=6)
(nyuin977<-c(b2732[4:6],b3237[2:6],b3742[2:6],b4247[2:6],b4752[2:6],b5257[2:6],b5762[2:4]))
c2732<-seq(c3060[1],c3060[2],length=6)
c3237<-seq(c3060[2],c3060[3],length=6)
c3742<-seq(c3060[3],c3060[4],length=6)
c4247<-seq(c3060[4],c3060[5],length=6)
c4752<-seq(c3060[5],c3060[6],length=6)
c5257<-seq(c3060[6],c3060[7],length=6)
c5762<-seq(c3060[7],c3060[8],length=6)
(nyuin99<-c(c2732[4:6],c3237[2:6],c3742[2:6],c4247[2:6],c4752[2:6],c5257[2:6],c5762[2:4]))

dayshospi<-read.table("dayshospi.txt",header=T)
attach(dayshospi)
dayshospiM<-dayshospi[dayshospi$gender=="M",2:3]
dayshospiF<-dayshospi[dayshospi$gender=="F",2:3]
plot(dayshospiM,ylim=c(0,110))
par(new=T)
plot(dayshospiF,ylim=c(0,110),col="red",pch="+")
glm.days<-glm(days~1+gender+age+age*gender,family=Gamma(link="log"),data=dayshospi)
summary(glm.days)
ldg977<-qnorm(0.977)*sd(glm.days$residuals)
ldg99<-qnorm(0.99)*sd(glm.days$residuals)
dayshospi$days
daysbe<-glm.days$fitted.value
days977<-exp(predict(glm.days)+ldg977)
days99<-exp(predict(glm.days)+ldg99)
a3060<-as.numeric(daysbe[7:14])
b3060<-as.numeric(days977[7:14])
c3060<-as.numeric(days99[7:14])
a2732<-seq(a3060[1],a3060[2],length=6)
a3237<-seq(a3060[2],a3060[3],length=6)
a3742<-seq(a3060[3],a3060[4],length=6)
a4247<-seq(a3060[4],a3060[5],length=6)
a4752<-seq(a3060[5],a3060[6],length=6)
a5257<-seq(a3060[6],a3060[7],length=6)
a5762<-seq(a3060[7],a3060[8],length=6)
(daysbe<-c(a2732[4:6],a3237[2:6],a3742[2:6],a4247[2:6],a4752[2:6],a5257[2:6],a5762[2:4]))
b2732<-seq(b3060[1],b3060[2],length=6)
b3237<-seq(b3060[2],b3060[3],length=6)
b3742<-seq(b3060[3],b3060[4],length=6)
b4247<-seq(b3060[4],b3060[5],length=6)
b4752<-seq(b3060[5],b3060[6],length=6)
b5257<-seq(b3060[6],b3060[7],length=6)
b5762<-seq(b3060[7],b3060[8],length=6)
(days977<-c(b2732[4:6],b3237[2:6],b3742[2:6],b4247[2:6],b4752[2:6],b5257[2:6],b5762[2:4]))
c2732<-seq(c3060[1],c3060[2],length=6)
c3237<-seq(c3060[2],c3060[3],length=6)
c3742<-seq(c3060[3],c3060[4],length=6)
c4247<-seq(c3060[4],c3060[5],length=6)
c4752<-seq(c3060[5],c3060[6],length=6)
c5257<-seq(c3060[6],c3060[7],length=6)
c5762<-seq(c3060[7],c3060[8],length=6)
(days99<-c(c2732[4:6],c3237[2:6],c3742[2:6],c4247[2:6],c4752[2:6],c5257[2:6],c5762[2:4]))

## premium calculation ##
age<-30:60
jbe<-nyuinbe*1000
j977<-nyuin977*1000
j99<-nyuin99*1000
hbe<-nyuinbe*365/daysbe
h977<-nyuin977*365/daysbe
h99<-nyuin99*365/daysbe
nyuindata<-data.frame(age,jbe,j977,j99,daysbe,days977,days99,hbe,h977,h99)
print(nyuindata,digits=4)

mort3<-read.table("3mort.txt",header=T)
px<-1-mort3[,2]
lx<-rep(0,31)
dx<-m1x<-m2x<-m3x<-Dx<-rep(0,30)
lx[1]<-100000
for (i in 1:30){
lx[i+1]<-px[i]*lx[i]
dx[i]<-lx[i]-lx[i+1]
m1x[i]<-lx[i]*nyuinbe[i]*365
m2x[i]<-lx[i]*nyuin977[i]*365
m3x[i]<-lx[i]*nyuin99[i]*365
}
e<-c(0:29)
v<-1/1.015
Dx<-v^e*lx[1:30]
M1x<-v^e*m1x
P1<-rep(0,26)
for(i in 1:26){
P1[i]<-v^0.5*sum(M1x[i:30])/sum(Dx[i:30])
}
M2x<-v^e*m2x
P2<-rep(0,26)
for(i in 1:26){
P2[i]<-v^0.5*sum(M2x[i:30])/sum(Dx[i:30])
}
M3x<-v^e*m3x
P3<-rep(0,26)
for(i in 1:26){
P3[i]<-v^0.5*sum(M3x[i:30])/sum(Dx[i:30])
}
nenrei<-30:55
Pbe<-round(P1,digits=3)
P977<-round(P2,digits=3)
P99<-round(P3,digits=3)
data.frame(nenrei,Pbe,P977,P99)
##reserve calculation##
V1<-rep(0,30)
for(i in 1:30){
V1[i]<-v^0.5*(sum(M1x[i:30])-sum(M1x[1:30])/sum(Dx[1:30])*sum(Dx[i:30]))
}
V2<-rep(0,30)
for(i in 1:30){
V2[i]<-v^0.5*(sum(M2x[i:30])-sum(M2x[1:30])/sum(Dx[1:30])*sum(Dx[i:30]))
}
V3<-rep(0,30)
for(i in 1:30){
V3[i]<-v^0.5*(sum(M3x[i:30])-sum(M3x[1:30])/sum(Dx[1:30])*sum(Dx[i:30]))
}
nenrei<-30:59
Vbe<-round(V1)/100000
V977<-round(V2)/100000
V99<-round(V3)/100000
data.frame(nenrei,Vbe,V977,V99)

