统计计算与R填空题试题库及答案.docx

上传人:b****4 文档编号:26905854 上传时间:2023-06-23 格式:DOCX 页数:30 大小:36.98KB
下载 相关 举报
统计计算与R填空题试题库及答案.docx_第1页
第1页 / 共30页
统计计算与R填空题试题库及答案.docx_第2页
第2页 / 共30页
统计计算与R填空题试题库及答案.docx_第3页
第3页 / 共30页
统计计算与R填空题试题库及答案.docx_第4页
第4页 / 共30页
统计计算与R填空题试题库及答案.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

统计计算与R填空题试题库及答案.docx

《统计计算与R填空题试题库及答案.docx》由会员分享,可在线阅读,更多相关《统计计算与R填空题试题库及答案.docx(30页珍藏版)》请在冰豆网上搜索。

统计计算与R填空题试题库及答案.docx

统计计算与R填空题试题库及答案

第二章R软件的使用

1.求解非线性方程组一般用Newton法。

Newton法的迭代格式为:

其中J(x)为函数f(x)的Jacobi矩阵。

请补全以下程序:

Newtons=function(fun,x,ep=1e-5,it_max=100){

index=0;k=1

while(k<=it_max){

x1=x;obj=fun(x);

x=x-_____(obj$J,obj$f);

norm=sqrt((x-x1)%*%(x-x1))

if(norm

index=1;_____

}

k=k+1

}

obj=fun(x);

list(root=_____,it=_____,index=index,FunVal=_____)

}

funs=function(x){

f=c(x[1]^2+x[2]^2-5,(x[1]+1)*x[2]-(3*x[1]+1))

J=matrix(c(2*x[1],2*x[2],x[2]-3,x[1]+1),

nrow=2,byrow=T)

list(f=f,J=J)

}

2.编写一个R程序〔函数〕.输入一个整数n,如果

,那么中止运算,并输出一句话:

"要求输入一个正整数〞;否那么,如果n是偶数,那么将n除以2,并赋给n;否那么,将3n+1赋给n.不断循环,只到n=1,才停顿计算,并输出一句话:

"运算成功〞.这个例子是为了检验数论中的一个简单的定理.请补全以下程序:

fn=function(n){

if(n<=0)

list(fail="要求输入一个正整数")

else{

i=0;

______{

if(n______2==0)

n=______

______

n=(3*n+1)

if(n==1)break

i=i+1

}

______(result="运算成功",n=n,iter=i)

}

}

**运行得到如下结果:

fn

(1)

$result

[1]"运算成功"

$n

[1]1

$iter

[1]2

第三章数据描述性分析

3.data_outline.R计算样本的各种描述性统计量。

请补全该程序。

data_outline=function(x){

n=length(x)

m=______(x)

v=______(x)

s=sd(x)

me=______(x)

cv=100*s/m

css=sum((x-m)^2)

uss=sum(x^2)

R=___________

R1=quantile(x,3/4)-quantile(x,1/4)

sm=______

g1=n/((n-1)*(n-2))*sum((x-m)^3)/s^3

g2=((n*(n+1))/((n-1)*(n-2)*(n-3))*sum((x-m)^4)/s^4

-(3*(n-1)^2)/((n-2)*(n-3)))

data.frame(N=n,Mean=m,Var=v,std_dev=s,Median=me,

std_mean=sm,CV=cv,CSS=css,USS=uss,R=R,

R1=R1,Skewness=g1,Kurtosis=g2,row.names=1)

}

第四章参数估计

4.请写出正态均值、方差区间估计及假设检验,非正态均值区间估计的函数名〔共23个程序〕

正态均值区间估计及假设检验

单总

两总

Sigma

Sigma未知

Sigma1,sigma2

Sigma1,sigma2未知=

Sigma1,sigma2

未知!

=

区间估计

interval_estimate1(双)

interval_estimate2(双)

interval_estimate5(单、双)

t.test(单、双)

X

t.test(单、双、成对)

X

假设检验

mean.test2

interval_estimate4(区)

t.test(区)

X

t.test(区、成对)

X

正态方差区间估计及假设检验

单总

两总

Mu

Mu

未知

mu1,mu2

mu1,mu2

未知

区间估计

interval_var2(双)

interval_var3(单、双)

interval_var4(单、双)

var.test(单、双)

X

假设检验

var.test1

var.test2

interval_var3(区)

interval_var4(区)

X

非正态均值区间估计:

interval_estimate3(双)

5.单个正态总体均值

的区间估计函数是interval_estimate1.R,请补全此程序。

interval_estimate1=function(x,sigma=-1,alpha=0.05){

n=length(x);xb=mean(x)

if(_____________){

tmp=sigma/sqrt(n)*_____________;df=n

}

else{

tmp=_____________*qt(1-alpha/2,n-1);df=_____________

}

_____________(mean=xb,df=df,a=xb-tmp,b=xb+tmp)

}

6.单个正态总体方差

的区间估计函数是interval_var1.R,请补全此程序。

interval_var1=function(x,___________,alpha=0.05){

n=length(x)

if(___________){

S2=___________;df=n

}

else{

S2=var(x);df=___________

}

a=df*S2/qchisq(1-alpha/2,df)

b=df*S2/qchisq(alpha/2,df)

data.frame(var=___________,df=df,a=a,b=b)

}

第五章假设检验

7.P_value.R为求P值的R程序,请补全它。

P_value=function(cdf,x,___________,side=0){

n=length(paramet)

P=___________(___________,

cdf(x),

cdf(x,paramet),

cdf(x,paramet[1],paramet[2]),

cdf(x,paramet[1],paramet[2],paramet[3])

if(___________)P

elseif(side>0)___________

else

if(P<1/2)2*P

else2*(1-P)

}

8.mean.test1.R是求单个正态总体均值检验的R程序,请补全它。

mean.test1=function(x,mu=0,__________,side=0){

source("__________")

n=length(x);xb=mean(x)

if(__________){

z=(xb-mu)/(sigma/sqrt(n))

P=P_value(__________,z,side=side)

data.frame(mean=xb,df=n,Z=z,P_value=P)

}

else{

t=(xb-mu)/(sd(x)/sqrt(n))

P=P_value(__________,t,paramet=n-1,side=side)

data.frame(mean=xb,df=n-1,T=t,P_value=P)

}

}

9.var.test1.R是求单个正态总体方差检验的R程序,请补全它。

var.test1=function(x,sigma2=1,_________,side=0){

source("P_value.R")

n=length(x)

if(_________){

S2=_________;df=n

}

else{

S2=var(x);df=n-1

}

chi2=df*S2/sigma2;

P=P_value(_________,chi2,paramet=_________,side=side)

data.frame(var=S2,df=df,chisq2=chi2,P_value=P)

}

第六章回归分析

12下面是利用R软件中的lm()求解回归参数的计算过程。

请补全结果,在横线上填统计量,而不是具体的数值。

>x=c(0.10,0.11,0.12,0.13,0.14,0.15,0.16,0.17,0.18,0.20,0.21,0.23)

>y=c(42.0,43.5,45.0,45.5,45.0,47.5,49.0,53.0,50.0,55.0,55.0,60.0)

>lm.sol=lm(y~1+x)

>summary(lm.sol)

Call:

lm(formula=y~1+x)

Residuals:

Min1QMedian3QMax

-2.0431-0.70560.16940.66332.2653

Coefficients:

EstimateStd.ErrortvaluePr(>|t|)

(Intercept)__________________5.88e-09***

x130.8359.68313.519.50e-08***

---

Signif.codes:

0‘***’0.001‘**’0.01‘*’0.05‘.’0.1‘’1

Residualstandarderror:

______on10degreesoffreedom

MultipleR-Squared:

______,AdjustedR-squared:

0.9429

F-statistic:

182.6on1and10DF,p-value:

9.505e-08

第七章方差分析

14请补全单因素方差分析表。

因素Ar-1

MSA=_________F=__________p

误差n-r

MSE=_________

总和______________

第八章应用多元分析(I)

1.请补全以下程序。

discriminiant.distance=function

(TrnX1,TrnX2,_________=NULL,var.equal=FALSE){

if(is.null(TstX)==TRUE)TstX=rbind(TrnX1,TrnX2)

if(is.vector(TstX)==TRUE)TstX=______________

elseif(is.matrix(TstX)!

=TRUE)

TstX=as.matrix(TstX)

if(is.matrix(TrnX1)!

=TRUE)TrnX1=as.matrix(TrnX1)

if(is.matrix(TrnX2)!

=TRUE)TrnX2=as.matrix(TrnX2)

nx=nrow(TstX)

blong=matrix(rep(0,nx),nrow=1,byrow=TRUE,

dimnames=list("blong",1:

nx))

mu1=colMeans(TrnX1);mu2=colMeans(TrnX2)

if(______________){

S=_________(rbind(TrnX1,TrnX2))

w=mahalanobis(TstX,mu2,S)-mahalanobis(TstX,mu1,S)

}

else{

S1=var(TrnX1);S2=var(TrnX2)

w=mahalanobis(TstX,mu2,S2)-mahalanobis(TstX,mu1,S1)

}

for(iin1:

nx){

if(w[i]>0)

blong[i]=1

else

blong[i]=2

}

_________

}

2.请补全以下程序。

distinguish.distance=function

(TrnX,________,TstX=NULL,var.equal=FALSE){

if(___________==FALSE){

mx=nrow(TrnX);mg=nrow(TrnG)

TrnX=rbind(TrnX,TrnG)

TrnG=factor(rep(1:

2,c(mx,mg)))

}

if(is.null(TstX)==TRUE)TstX=TrnX

if(is.vector(TstX)==TRUE)TstX=t(as.matrix(TstX))

elseif(is.matrix(TstX)!

=TRUE)

TstX=as.matrix(TstX)

if(is.matrix(TrnX)!

=TRUE)TrnX=as.matrix(TrnX)

nx=nrow(TstX)

blong=matrix(rep(0,nx),nrow=1,dimnames=list("blong",1:

nx))

g=length(levels(TrnG))

mu=matrix(0,nrow=g,ncol=ncol(TrnX))

for(iin1:

g)

mu[i,]=colMeans(TrnX[TrnG==i,])

D=matrix(0,nrow=g,ncol=nx)

if(____________________){

for(iin1:

g)

D[i,]=_________________________

}

else{

for(iin1:

g)

D[i,]=mahalanobis(TstX,mu[i,],var(TrnX[TrnG==i,]))

}

for(jin1:

nx){

______________

for(iin1:

g)

if(D[i,j]

dmin=D[i,j];blong[j]=i

}

}

blong

}

3.请补全以下程序。

discriminiant.bayes=function

(TrnX1,TrnX2,__________,TstX=NULL,var.equal=FALSE){

if(is.null(TstX)==TRUE)TstX=rbind(TrnX1,TrnX2)

if(is.vector(TstX)==TRUE)TstX=t(as.matrix(TstX))

elseif(is.matrix(TstX)!

=TRUE)

TstX=as.matrix(TstX)

if(is.matrix(TrnX1)!

=TRUE)TrnX1=as.matrix(TrnX1)

if(is.matrix(TrnX2)!

=TRUE)TrnX2=as.matrix(TrnX2)

nx=nrow(TstX)

blong=matrix(rep(0,nx),nrow=1,byrow=TRUE,

dimnames=list("blong",1:

nx))

mu1=colMeans(TrnX1);mu2=colMeans(TrnX2)

if(__________){

S=var(rbind(TrnX1,TrnX2));beta=__________

w=_____________________________________

}

else{

S1=var(TrnX1);S2=var(TrnX2)

beta=2*log(rate)+log(det(S1)/det(S2))

w=mahalanobis(TstX,mu2,S2)-mahalanobis(TstX,mu1,S1)

}

for(iin1:

nx){

if(__________)

blong[i]=1

else

blong[i]=2

}

blong

}

第九章应用多元分析(II)

4.下面是主成分法的R程序,请补全它。

factor.analy1=function(S,m){

p=nrow(S);diag_S=diag(S);sum_rank=sum(diag_S)

rowname=paste("X",1:

p,sep=")

colname=paste("Factor",1:

m,sep=")

A=matrix(0,nrow=p,ncol=m,

dimnames=list(rowname,colname))

eig=______________

for(iin1:

m)

A[,i]=__________________*eig$vectors[,i]

h=diag(______________)

rowname=c("SSloadings","ProportionVar","CumulativeVar")

B=matrix(0,nrow=3,ncol=m,

dimnames=list(rowname,colname))

for(iin1:

m){

B[1,i]=______________

B[2,i]=B[1,i]/sum_rank

B[3,i]=sum(B[1,1:

i])/sum_rank

}

method=c("PrincipalponentMethod")

list(method=method,loadings=A,

var=__________(mon=h,spcific=diag_S-h),B=B)

}

5.下面是主因子法的R程序,请补全它。

factor.analy2=function(_____________){

p=nrow(R);diag_R=diag(R);sum_rank=sum(diag_R)

rowname=paste("X",1:

p,sep=")

colname=paste("Factor",1:

m,sep=")

A=matrix(0,nrow=p,ncol=m,

dimnames=list(rowname,colname))

kmax=20;k=1;h=_________

_________{

diag(R)=h;h1=h;eig=eigen(R)

for(iin1:

m)

A[,i]=sqrt(eig$values[i])*eig$vectors[,i]

h=diag(A%*%t(A))

if((___________________<1e-4)|k==kmax)break

k=k+1

}

rowname=c("SSloadings","ProportionVar","CumulativeVar")

B=matrix(0,nrow=3,ncol=m,

dimnames=list(rowname,colname))

for(iin1:

m){

B[1,i]=sum(A[,i]^2)

B[2,i]=B[1,i]/sum_rank

B[3,i]=sum(B[1,1:

i])/sum_rank

}

_________=c("PrincipalFactorMethod")

list(method=method,loadings=A,

var=cbind(mon=h,spcific=diag_R-h),B=B,iterative=k)

}

6.下面是将因子分析的三种估计方法结合在一起的R程序,请补全它。

factor.analy=function(S,m=0,

d=______________,method="___________"){

if(___________){

p=nrow(S);eig=eigen(S)

sum_eig=sum(diag(S))

for(iin1:

p){

if(________________/sum_eig>0.70){

m=i;break

}

}

}

___________(method,

prinp=factor.analy1(S,m),

factor=factor.analy2(S,m,d),

likelihood=factor.analy3(S,m,d)

}

程序填空题题库答案

第二章R软件的使用

1.求解非线性方程组一般用Newton法。

Newton法的迭代格式为:

其中J(x)为函数f(x)的Jacobi矩阵。

请补全以下程序:

Newtons=function(fun,x,ep=1e-5,it_max=100){

index=0;k=1

while(k<=it_max){

x1=x;obj=fun(x);

x=x-solve(obj$J,obj$f);

norm=sqrt((x-x1)%*%(x-x1))

if(norm

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

当前位置:首页 > 医药卫生 > 基础医学

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

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