统计建模与R软件课后答案.docx

上传人:b****1 文档编号:1099651 上传时间:2022-10-17 格式:DOCX 页数:31 大小:66.96KB
下载 相关 举报
统计建模与R软件课后答案.docx_第1页
第1页 / 共31页
统计建模与R软件课后答案.docx_第2页
第2页 / 共31页
统计建模与R软件课后答案.docx_第3页
第3页 / 共31页
统计建模与R软件课后答案.docx_第4页
第4页 / 共31页
统计建模与R软件课后答案.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

统计建模与R软件课后答案.docx

《统计建模与R软件课后答案.docx》由会员分享,可在线阅读,更多相关《统计建模与R软件课后答案.docx(31页珍藏版)》请在冰豆网上搜索。

统计建模与R软件课后答案.docx

统计建模与R软件课后答案

第二章

2.1

>x<-c(1,2,3);y<-c(4,5,6)

>e<-c(1,1,1)

>z<-2*x+y+e;z

[1]71013

>z1<-crossprod(x,y);z1

[,1]

[1,]32

>z2<-outer(x,y);z2

[,1][,2][,3]

[1,]456

[2,]81012

[3,]121518

2.2

(1)>A<-matrix(1:

20,nrow=4);B<-matrix(1:

20,nrow=4,byrow=T)

>C<-A+B;C

(2)>D<-A%*%B;D

(3)>E<-A*B;E

(4)>F<-A[1:

3,1:

3]

(5)>G<-B[,-3]

2.3

>x<-c(rep(1,5),rep(2,3),rep(3,4),rep(4,2));x

2.4

>H<-matrix(nrow=5,ncol=5)

>for(iin1:

5)

+for(jin1:

5)

+H[i,j]<-1/(i+j-1)

(1)>det(H)

(2)>solve(H)

(3)>eigen(H)

2.5

>studentdata<-data.frame(姓名=c('张三','李四','王五','赵六','丁一')

+,性别=c('女','男','女','男','女'),年龄=c('14','15','16','14','15'),

+身高=c('156','165','157','162','159'),体重=c('42','49','41.5','52','45.5'))

2.6

>write.table(studentdata,file='student.txt')

>write.csv(studentdata,file='student.csv')

2.7

count<-function(n)

{

if(n<=0)

print('要求输入一个正整数')

else{

repeat{

if(n%%2==0)

n<-n/2

else

n<-(3*n+1)

if(n==1)break

}

print('运算成功')}

}

第三章

3.1

首先将数据录入为x。

利用data_outline函数。

如下

>data_outline(x)

3.2

>hist(x,freq=F)

>lines(density(x),col='red')

>y<-min(x):

max(x)

>lines(y,dnorm(y,73.668,3.9389),col='blue')

>plot(ecdf(x),verticals=T,do.p=F)

>lines(y,pnorm(y,73.668,3.9389))

>qqnorm(x)

>qqline(x)

3.3

>stem(x)

>boxplot(x)

>fivenum(x)

3.4

>shapiro.test(x)

>ks.test(x,'pnorm',73.668,3.9389)

One-sampleKolmogorov-Smirnovtest

data:

x

D=0.073,p-value=0.6611

alternativehypothesis:

two-sided

Warningmessage:

Inks.test(x,"pnorm",73.668,3.9389):

tiesshouldnotbepresentfortheKolmogorov-Smirnovtest

这里出现警告信息是因为ks检验要求样本数据是连续的,不允许出现重复值

3.5

>x1<-c(2,4,3,2,4,7,7,2,2,5,4);x2<-c(5,6,8,5,10,7,12,12,6,6);x3<-c(7,11,6,6,7,9,5,5,10,6,3,10)

>boxplot(x1,x2,x3,names=c('x1','x2','x3'),vcol=c(2,3,4))

>windows()

>plot(factor(c(rep(1,length(x1)),rep(2,length(x2)),rep(3,length(x3)))),c(x1,x2,x3))

3.6

>rubber<-data.frame(x1=c(65,70,70,69,66,67,68,72,66,68),

+x2=c(45,45,48,46,50,46,47,43,47,48),x3=c(27.6,30.7,31.8,32.6,31.0,31.3,37.0,33.6,33.1,34.2))

>plot(rubber)

具体有相关关系的两个变量的散点图要么是从左下角到右上角(正相关),要么是从左上角到右下角(负相关)。

从上图可知所有的图中偶读没有这样的趋势,故均不相关。

3.7

(1)>student<-read.csv('3.7.csv')

>attach(student)

>plot(体重~身高)

(2)>coplot(体重~身高|性别)

(3)>coplot(体重~身高|年龄)

(4)>coplot(体重~身高|年龄+性别)

只列出(4)的结果,如下图

3.8

>x<-seq(-2,3,0.5);y<-seq(-1,7,0.5)

>f<-function(x,y)

+x^4-2*x^2*y+x^2-2*x*y+2*y^2+9*x/2-4*y+4

>z<-outer(x,y,f)

>contour(x,y,z,levels=c(0,1,2,3,4,5,10,15,20,30,40,50,60,80,100),col='blue')

>windows()

>persp(x,y,z,theta=30,phi=30,expand=0.7,col='red')

3.9

>cor.test(身高,体重)

根据得出的结果看是相关的。

具体结果不再列出

3.10

>df<-read.csv('48名求职者得分.csv')

>stars(df)

然后按照G的标准来画出星图

>attach(df)

>df$G1<-(SC+LC+SMS+DRV+AMB+GSP+POT)/7

>df$G2<-(FL+EXP+SUIT)/3

>df$G3<-(LA+HON+KJ)/3

>df$G4<-AA

>df$G5<-APP

>a<-scale(df[,17:

21])

>stars(a)

这里从17开始取,是因为在df中将ID也作为了一列

3.11

使用P159已经编好的函数unison,接着上题,直接有

>unison(a)

第四章

4.1

(1)先求矩估计。

总体的期望为。

因此我们有。

可解得a=(2*E()-1)/(1-E()).因此我们用样本的均值来估计a即可。

在R中实现如下

>x<-c(0.1,0.2,0.9,0.8,0.7,0.7)

>(2*mean(x)-1)/(1-mean(x))

[1]0.3076923

(2)采用极大似然估计

首先求出极大似然函数为

再取对数为

最后求导

好了下面开始用R编程求解,注意此题中n=6.

方法一、

使用unniroot函数

>f<-function(a)6/(a+1)+sum(log(x))

>uniroot(f,c(0,1))

方法二、

使用optimize函数

>g<-function(a)6*log(a+1)+a*sum(log(x))

>optimize(g,c(0,1),maximum=T)

4.2

用极大似然估计得出.现用R求解如下

>x<-c(rep(5,365),rep(15,245),rep(25,150),rep(35,100),rep(45,70),rep(55,45),rep(65,25))

>1000/sum(x)

4.3

换句话讲,就是用该样本来估计泊松分布中的参数,然后求出该分布的均值。

我们知道泊松分布中的参数,既是均值又是方差。

因此我们只需要用样本均值作矩估计即可

在R中实现如下

>x<-c(rep(0,17),rep(1,20),rep(2,10),rep(3,2),rep(4,1))

>mean(x)

[1]1

4.4

>f<-function(x){

+obj<-c(-13+x[1]+((5-x[2])*x[2]-2)*x[2],(-29+x[1]+((x[2]+1)*x[2]-14)*x[2]))

+sum(obj^2)}

>nlm(f,c(0.5,-2))

4.5

在矩估计中,正态分布总体的均值用样本的均值估计。

故在R中实现如下

>x<-c(54,67,68,78,70,66,67,70,65,69)

>mean(x)

[1]67.4

然后用t.test作区间估计,如下

>t.test(x)

>t.test(x,alternative='less')

>t.test(x,alternative='greater')

此时我们只需要区间估计的结果,所以我们只看t.test中的关于置信区间的输出即可。

t.test同时也给出均值检验的结果,但是默认mu=0

并不是我们想要的。

下面我们来做是否低于72的均值假设检验。

如下

>t.test(x,alternative='greater',mu=72)

OneSamplet-test

data:

x

t=-2.4534,df=9,p-value=0.9817

alternativehypothesis:

truemeanisgreaterthan72

95percentconfidenceinterval:

63.96295Inf

sampleestimates:

meanofx

67.4

结果说明:

我们的备择假设是比72要大,但是p值为0.9817,所以我们不接受备择假设,接受原假设比72小。

因此这10名患者的平均脉搏次数比正常人要小。

4.6

我们可以用两种方式来做一做

>x<-c(140,137,136,140,145,148,140,135,144,141)

>y<-c(135,118,115,140,128,131,130,115,131,125)

>t.test(x,y,var.equal=T)

>t.test(x-y)

结果不再列出,但是可以发现用均值差估计和配对数据估计的结果的数值有一点小小的差别。

但得出的结论是不影响的(他们的期望差别很大)

4.7

>A<-c(0.143,0.142,0.143,0.137)

>B<-c(0.140,0.142,0.136,0.138,0.140)

>t.test(A,B)

4.8

>x<-c(140,137,136,140,145,148,140,135,144,141)

>y<-c(135,118,115,140,128,131,130,115,131,125)

>var.test(x,y)

>t.test(x,y,var.equal=F)

4.9

泊松分布的参数就等于它的均值也等于方差。

我们直接用样本均值来估计参数即可,然后作样本均值0.95的置信区间即可。

>x<-c(rep(0,7),rep(1,10),rep(2,12),rep(3,8),rep(4,3),rep(5,2))

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1