统计建模与R软件习题二答案
# 习题2
# 2.1
x=c(1,2,3)
y=c(4,5,6)
e=c(rep(1,3))
z=2*x+y+e;z
x%*%y # 若x,y如答案那样定义为矩阵,则不能用%*%,因为,维数不对应,
x%o%y # 答案
x<-matrix(1:3,nrow=3)
y<-matrix(4:6,nrow=3)
e<-matrix(c(1,1,1),nrow=3)
z<-2*x+y+e;z
crossprod(x,y)#内积
outer(x,y)#外积 # 2.2
A=matrix(1:20,4,5);A
B=matrix(1:20,4,5,byrow=T);B
C=A+B;C
D=crossprod(A,B);D# D=A%*%B;D 错误 维数不对应,题目有错,本来就不可能AB
E=A*B;E
F=A[1:3,1:3];F
G=B[,c(1,2,4,5)];G # G<-B[1:4,-3];G 注意-3的用法 # 答案
A<-matrix(1:20,nrow=4)
B<-matrix(1:20,nrow=4,byrow=T)
C<-A+B;C
#D<-AB#不存在AB这种写法
E<-A*B;E
F<-A[1:3,1:3];F
G<-B[1:4,-3];G # 2.3
x=c(rep(1,5),rep(2,3),rep(3,4),rep(4,2));x
#答案同上 # 2.4
Hilbert=function(n=5){
H=matrix(0,nrow=n,ncol=n)
for (i in 1:n){
for (j in 1:n)
H[i,j]=1/(i+j-1)
}
H # 返回值,
list(Hmatrix=H,det=det(H),sol=solve(H),eig=eigen(H)) # 多元返回值
}
H=Hilbert(5);H
det(H)
solve(H)
eigen(H) # 学会了function,对上述进行以下修改
funcH=function(n=5) {
H=matrix(0,n,n)
for (i in 1:n) {
for (j in 1:n) {
H[i,j]=1/(i+j-1)
} }
H # 返回值,输入H
# list(Hmatrix=H,det=det(H),sol=solve(H),eig=eigen(H))
# 也可以以列表形式输出多个返回值,同时能给每个元素定义元素名
# 如 list(Hilbert=H)
list(Hilbert=H)
}
funcH() #2.4答案 5价Hilbert矩阵
n<-5
x<-array(0,dim=c(n,n))
for(i in 1:n){
for(j in 1:n){
x[i,j]<-1/(i+j-1)
}
}
x
det(x)#矩阵行列式
solve(x)#逆矩阵
eigen(x)#特征值与特征向量 # 2.5 data.frame()
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))
#studentdata=data.frame('序号'=1:5,'姓名'=c('张三','李四','王五','赵六','丁一'),
# '性别'=c('女','男','女','男','女'),'年龄'=c(14,15,16,14,15),
# '身高'=c(156,165,157,162,159),'体重'=c(42,49,41.5,52,45.5))
# 不需要输入序号。
write.table(studentdata,'Re2.5.txt') # 答案
student<-data.frame(name=c("zhangsan","lisi","wangwu","zhaoliu","dingyi"),
sex=c("f","m","f","m","f"),
age=c("14","15","16","14","15"),
height=c("156","165","157","162","159"),
weight=c("42","49","41.5","52","45.5")) # 2.6
st=read.table('Re2.5.txt',header=T)
write.csv(st,'Re2.5.csv') #2.6 答案
student1<-write.table(student,file="student1.txt")
student2<-read.table("student1.txt",head=T)
student3<-write.csv(student2,file="student3.csv") # 2.7
func=function(n) {
if (n<=0) "要求输入一个正整数"
else {
while(n!=1) {
if (n%%2==0) n=n/2
else n=3*n+1}
"运算成功"
}
} # R中定义的函数,没有专门的返回值设置,只相当于代码复制粘贴,
func(8) #返回值为代码的输出值 # 答案
#2.7
func<-function(n){
if(n<=0) list("要求输入一个正整数")
else{
repeat{
if(n==1) break
else if(n%%2==0){n<-n/2}
else n<-3*n+1}
list("运算成功")
}
}
统计建模与R软件习题二答案的更多相关文章
- R统计建模与R软件
教材目录 第一章 概率统计的基本知识 第二章 R软件的使用 第三章 数据描述性分析 第四章 参数估计 第五章 假设检验 第六章 回归分析 第七章 方差分析 第八章 应用多元分析(I) 第九章 应用多元 ...
- 统计分析与R软件-chapter2-5
2.5 多维数组和矩阵 2.5.1 生成数组或矩阵 数组有一个特征属性叫做维数向量(dim属性),维数向量是一个元素取正整数的向量,其长度是数组的维数,比如维数向量有两个元素时数组为2维数组(矩阵). ...
- 3D建模与处理软件简介
[前言]自半年前笔者发表博客“什么是计算机图形学”以来,时常有人来向笔者询问3D模型的构建方法与工具.笔者的研究方向是以3D技术为主,具体包括3D建模,3D处理及3D打印三个方面,在3D建模与处理方面 ...
- 统计计算与R语言的资料汇总(截止2016年12月)
本文在Creative Commons许可证下发布. 在fedora Linux上断断续续使用R语言过了9年后,发现R语言在国内用的人逐渐多了起来.由于工作原因,直到今年暑假一个赴京工作的机会与一位统 ...
- 统计分析与R软件-chapter2-6
2.6 列表与数据框 2.6.1 列表 1.列表的构造 列表是一种特别的对象集合,它的元素也由序号(下标)区分,但是各元素的类型可以是任意对象,不同元素不必是同一类型,元素本身允许是其他复杂数据类型, ...
- R语言入门学习笔记 - 对R软件的认识
一.R软件 1.安装R:自行百度☺ 2.R控制台(R Console)和R程序脚本: 打开R软件,就会直接打开控制台,控制台可以显示程序运行的结果.错误提示等信息,也可以直接输入想要执行的操作并立即返 ...
- #r语言(二)笔记
#r语言(二)笔记 #早复习 #概述:R是用于统计分析.绘图的语言和操作环境 #对象: #数据类型--统称为对象 #向量(vector):用于存储数值型.字符型或逻辑型数据的一维数组. #定义向量: ...
- R软件导入数据_r语言怎么导入数据_R软件导入数据
R软件导入数据_r语言怎么导入数据_R软件导入数据 R软件导入数据 1.Rcmdr安装包导入数据: 1.安装Rcmdr包,输入: install.packages("Rcmdr") ...
- R语言入门二
一.R语言应知常用函数 1.getwd() 函数:获取工作目录(同eclipse设置workspace类似),直接在R软件中使用,如下图: 2.setwd(dir=”工作目录”) 函数:设置R软件RS ...
随机推荐
- apt-mirror
对于centos来说,搭建一个本地源,相对来说,还是比较简单的.对于ubuntu来说,就复杂很多, 估计也和我不熟悉有关. http://unixrob.blogspot.com/2012/05/cr ...
- top -Hp pid 显示所有的线程
可以显示所有的线程 top -Hp pid [root@jiangyi01.sqa.zmf /home/ahao.mah] #top -Hp 41330 top - 22:49:40 up 27 da ...
- Ubuntu14.04下安装ns2.35
我选择的版本是2.35最新版本,安装环境是Ubuntu 14.04. 1.下载ns2的安装包,这里我选择的是ns-allinone-2.35.tar.gz压缩格式的all in one安装包,all ...
- ngnix 一 入门指南
翻译自:ngnix--Beginner Guide ##ngnix入门指南 本指南给出了nginx的基本介绍,并介绍了可以使用它的完成一些简单任务. 它假定nginx已经安装在读者的机器上. 如果不是 ...
- 模型类中 Parcelable 接口使用
package com.exmyth.ui.model; import java.util.ArrayList; import java.util.List; public class Product ...
- <微软的软件测试之道>读书笔记3
一.自动化的标准步骤: 1.环境初始化,并检查环境是否处于正确的状态,能否开始测试 2.执行步骤 3.判断结果,并将结果保存到其它地方以供检查分析 4.环境清理,清理本用例产生的垃圾(临时文件.环境变 ...
- PHP5.4新特性(转)
PHP5.4正式前两天发布了,之前有看了一些PHP5.4主要特性相关文章,因此在这里小结一下. 其中好几点更新是由Laruence贡献的!本文部分内容也是源自Laruence的博客. 1. Buid- ...
- Java实现BASE64编解码
Java实现BASE64编解码 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs BASE64和其它类似的编码算法通经常使用于转换二进制数据为文本数据,其目 ...
- JAVA/PHP/C#版RSA验签--转
本文是上一篇文章的兄弟篇,上篇文章介绍了客户端的sdk中如何基于JAVA/PHP/C#使用RSA私钥签名,然后服务端基于JAVA使用RSA公钥验签,客户端签名/服务端验签的模式只能帮助服务端检查客户端 ...
- 《UNIX网络编程》之read_timeout实验
最近在做项目,需要做一个服务器和客户端的基于TCP的套接口网络编程,由于服务器端返回数据并不是那么的及时,因此,需要在客户端做些延迟,然后才能去读取数据,实验测试结果如下. 首先,我们先来看一下我们封 ...