Assignment1:
> z<- read.csv(file.choose(),header=T)
> close<- z$Close[10:95]
> close
[1] 5380.35 5362.95 5366.30 5421.00 5412.85 5415.35 5386.70 5350.25 5334.60 5287.80 5315.05 5258.50 5253.75 5274.00 5225.70 5238.40 5342.10 5358.70 5363.45 5390.00
[21] 5431.00 5435.35 5577.65 5610.00 5600.05 5554.25 5691.15 5669.60 5673.90 5663.45 5649.50 5703.30 5718.80 5731.25 5787.60 5746.95 5676.00 5704.60 5652.15 5708.05
[41] 5676.05 5687.25 5648.00 5660.25 5718.70 5684.25 5717.15 5691.40 5705.30 5664.30 5665.60 5597.90 5619.70 5645.05 5697.70 5704.20 5724.40 5760.10 5738.75 5686.25
[61] 5683.70 5666.95 5631.00 5574.05 5571.40 5571.55 5614.80 5627.75 5626.60 5635.90 5727.45 5825.00 5879.85 5870.95 5889.25 5900.50 5930.90 5907.40 5908.90 5898.80
[81] 5888.00 5851.50 5879.60 5857.90 5896.80 5929.60
> close.ts<- ts(close,deltat=1/252)
> close.ts
Time Series:
Start = c(1, 1)
End = c(1, 86)
Frequency = 252
[1] 5380.35 5362.95 5366.30 5421.00 5412.85 5415.35 5386.70 5350.25 5334.60 5287.80 5315.05 5258.50 5253.75 5274.00 5225.70 5238.40 5342.10 5358.70 5363.45 5390.00
[21] 5431.00 5435.35 5577.65 5610.00 5600.05 5554.25 5691.15 5669.60 5673.90 5663.45 5649.50 5703.30 5718.80 5731.25 5787.60 5746.95 5676.00 5704.60 5652.15 5708.05
[41] 5676.05 5687.25 5648.00 5660.25 5718.70 5684.25 5717.15 5691.40 5705.30 5664.30 5665.60 5597.90 5619.70 5645.05 5697.70 5704.20 5724.40 5760.10 5738.75 5686.25
[61] 5683.70 5666.95 5631.00 5574.05 5571.40 5571.55 5614.80 5627.75 5626.60 5635.90 5727.45 5825.00 5879.85 5870.95 5889.25 5900.50 5930.90 5907.40 5908.90 5898.80
[81] 5888.00 5851.50 5879.60 5857.90 5896.80 5929.60
> z.diff<- diff(close.ts)
> returns=z.diff/lag(close.ts,k=-1)
> returns
Time Series:
Start = c(1, 2)
End = c(1, 86)
Frequency = 252
[1] -3.233990e-03 6.246562e-04 1.019324e-02 -1.503413e-03 4.618639e-04 -5.290517e-03 -6.766666e-03 -2.925097e-03 -8.772916e-03 5.153372e-03 -1.063960e-02
[12] -9.032994e-04 3.854390e-03 -9.158134e-03 2.430296e-03 1.979612e-02 3.107392e-03 8.864090e-04 4.950172e-03 7.606679e-03 8.009575e-04 2.618047e-02
[23] 5.799934e-03 -1.773619e-03 -8.178498e-03 2.464779e-02 -3.786581e-03 7.584309e-04 -1.841767e-03 -2.463163e-03 9.522967e-03 2.717725e-03 2.177030e-03
[34] 9.832061e-03 -7.023637e-03 -1.234568e-02 5.038760e-03 -9.194334e-03 9.890042e-03 -5.606118e-03 1.973203e-03 -6.901402e-03 2.168909e-03 1.032640e-02
[45] -6.024096e-03 5.787923e-03 -4.503992e-03 2.442281e-03 -7.186300e-03 2.295076e-04 -1.194931e-02 3.894318e-03 4.510917e-03 9.326755e-03 1.140811e-03
[56] 3.541250e-03 6.236461e-03 -3.706533e-03 -9.148334e-03 -4.484502e-04 -2.947024e-03 -6.343800e-03 -1.011366e-02 -4.754173e-04 2.692321e-05 7.762651e-03
[67] 2.306405e-03 -2.043445e-04 1.652863e-03 1.624408e-02 1.703201e-02 9.416309e-03 -1.513644e-03 3.117042e-03 1.910260e-03 5.152106e-03 -3.962299e-03
[78] 2.539188e-04 -1.709286e-03 -1.830881e-03 -6.199049e-03 4.802187e-03 -3.690727e-03 6.640605e-03 5.562339e-03
> plot(returns)
Assignment 2:
> z<-read.csv(file.choose(),header=T)
> head(z)
age ed employ address income debtinc creddebt othdebt default
1 41 3 17 12 176 9.3 11.36 5.01 1
2 27 1 10 6 31 17.3 1.36 4.00 0
3 40 1 15 14 55 5.5 0.86 2.17 0
4 41 1 15 14 120 2.9 2.66 0.82 0
5 24 2 2 0 28 17.3 1.79 3.06 1
6 41 2 5 5 25 10.2 0.39 2.16 0
> data<- z[1:700,1:9]
> sapply(data,mean)
age ed employ address income debtinc creddebt othdebt default
34.8600000 1.7228571 8.3885714 8.2785714 45.6014286 10.2605714 1.5534571 3.0582286 0.2614286
> data$ed<-factor(data$ed)
> logit.est<-glm(default~age+employ+address+income+debtinc+creddebt+othdebt,data=data,family="binomial")
> summary(logit.est)
Call:
glm(formula = default ~ age + employ + address + income + debtinc +
creddebt + othdebt, family = "binomial", data = data)
Deviance Residuals:
Min 1Q Median 3Q Max
-2.3659 -0.6516 -0.2882 0.2625 2.9757
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.376573 0.571560 -2.408 0.0160 *
age 0.033712 0.017342 1.944 0.0519 .
employ -0.265086 0.031999 -8.284 < 2e-16 ***
address -0.103960 0.023192 -4.483 7.38e-06 ***
income -0.007566 0.008095 -0.935 0.3500
debtinc 0.065099 0.030621 2.126 0.0335 *
creddebt 0.628475 0.113759 5.525 3.30e-08 ***
othdebt 0.070761 0.077682 0.911 0.3623
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 804.36 on 699 degrees of freedom
Residual deviance: 552.20 on 692 degrees of freedom
AIC: 568.2
Number of Fisher Scoring iterations: 6
> confint.default(logit.est)
2.5 % 97.5 %
(Intercept) -2.4968094058 -0.25633710
age -0.0002768342 0.06770153
employ -0.3278025120 -0.20236959
address -0.1494167558 -0.05850405
income -0.0234310297 0.00829931
debtinc 0.0050836856 0.12511410
creddebt 0.4055112145 0.85143903
othdebt -0.0814939858 0.22301505
> logit.eg2<-with(z[701:850,1:8],data.frame(age=mean(age),employ=mean(employ),address=mean(address),income=mean(income),debtinc=mean(debtinc),creddebt=mean(creddebt),othdebt=mean(othdebt),ed=factor(1:3)))
> logit.eg2$prob<-predict(logit.est,newdata=logit.eg2,type="response")
> head(logit.eg2)
age employ address income debtinc creddebt othdebt ed prob
1 35.82 9.393333 8.806667 51.68667 9.756667 1.6852 3.174933 1 0.1143839
2 35.82 9.393333 8.806667 51.68667 9.756667 1.6852 3.174933 2 0.1143839
3 35.82 9.393333 8.806667 51.68667 9.756667 1.6852 3.174933 3 0.1143839
>

No comments:
Post a Comment