R实验1--R 语言入门——矩阵代数、随机变量、简单作图

一 实验目标:

1.、 回顾 R 语言基本操作,熟悉操作台菜单及其功能;
2、掌握数据集的创建;
3、掌握基本的矩阵计算方法,基本的随机变量数字特征计算方法;
4、了解多元数据集及可视化。

二、实验要求:

1、 熟悉菜单栏、工作路径的设置、脚本文件的创建、数据包的加载、帮助文档的使用;
2、向量、矩阵,数据框(因子)、列表的创建;
3、 外部数据导入和分析案例(1 组案例)。

三、实验操作

1、向量的创建

1、实验代码

x1<- c(1,2,5,3,6,7,8)   #数值型向量
x2<- c(10,11,12,13,14,15,16)  
#矩阵的创建
#用rbin()按行合并

rbind(x1,x2)
#用cbind()按列合并
cbind(x1,x2)



#生成数据框
data.frame(x1,x2)



#尝试做其他的数据框(可忽略)
patientID<- c(1, 2, 3, 4)
age <- c(1, 4, 2, 5)
diabetes <- c("Type1", "Type2", "Type1", "Type1")
status <- c("Poor", "Improved", "Excellent", "Poor")
data.frame(patientID, age, diabetes, status)

2、实验结果:

请添加图片描述

2、列表的创建用,函数list()创建列表

1、代码实现

g <- "My List"
h <- c(5, 6, 8, 9)
j <- matrix(1:10, nrow = 5)
k <- c("one", "two", "three")
mylist <- list(title = g, ages = h, j, k)
mylist

2、结果

请添加图片描述

3、 外部数据导入和分析案例(1组案例)

1、测得12名中学生的身高(x1)和体重(x2)的数据,如表。
请添加图片描述
1)创建一个向量(一维数组)

x1<- c(171, 175, 159, 155, 152, 158, 154, 164, 168, 166, 159, 164)
x2<- c(57, 64, 41, 38, 35, 44, 41, 51, 57, 49, 47, 46)
length(x1)#向量长度
mode(x1)#向量类型

2)创建一个矩阵(二维数据)

#矩阵
rbind(x1,x2)
cbind(x1,x2)

3)生成数据框

data.frame(x1,x2)

4)直方图

hist(x1) 
hist(x2)

5)散点图

plot(x1,x2)
df <- data.frame(
  Height = c(171, 175, 159, 155, 152, 158, 154, 164, 168, 166, 159, 164),
  Weight = c(57, 64, 41, 38, 35, 44, 41, 51, 57, 49, 47, 46)
)
attach(df)
qqnorm(Height);qqline(Height)
qqnorm(Weight);qqline(Weight)

6)散布图矩阵

df <- data.frame(
  Height = c(171, 175, 159, 155, 152, 158, 154, 164, 168, 166, 159, 164),
  Weight = c(57, 64, 41, 38, 35, 44, 41, 51, 57, 49, 47, 46)
)
pairs(df)

df <- data.frame(
  Age = c(13, 15, 13, 14, 14, 15, 13, 12, 13, 14, 14, 13),
  Height = c(171, 175, 159, 155, 152, 158, 154, 164, 168, 166, 159, 164),
  Weight = c(57, 64, 41, 38, 35, 44, 41, 51, 57, 49, 47, 46)
)
pairs(df)

2、实验结果

请添加图片描述

4、 思考与练习题

在这里插入图片描述
1)第一题代码

#第一题
# 导入数据
x1 <- c(9,2,6,5,8)
x1
x2 <- c(12,8,6,4,10)
x2
x3 <- c(3,4,0,2,1)
x3
# 样本均值向量
mean(x1)
mean(x2)
mean(x3)

#转为矩阵
df <- data.frame(x1,x2,x3)
# 样本方差
var(df)
# 样本协方差
cov(df)
# 样本协方差矩阵
matrixNoHeader <- cbind(x1,x2,x3)
var(matrixNoHeader)
# 样本相关系数,对角线上的数值即为相关系数
cor(df)
# 样本相关矩阵
cor(df)

2)结果

请添加图片描述
3)第二题

###第2题###
#散点图
plot(x1,x2)
plot(x2,x3)
plot(x1,x3)

#散布图矩阵
pairs(df)

4)部分截图
请添加图片描述
请添加图片描述

5、 查看和调用 R 中的 mtcars, iris 数据集,了解数据基本信息,结合所学知识,选择至少 2种作图方式进行图形展示。

1、实验代码

#iris和mtcars数据集
dim(iris)
names(iris)
str(iris)
attributes(iris)
quantile(iris$Sepal.Length)
quantile(iris$Sepal.Length, c(.1, .3, .65))

#使用函数var查看Sepal.Length的方差,使用hist绘制分布直方图
var(iris$Sepal.Length)
hist(iris$Sepal.Length)

# 密度图
plot(density(iris$Sepal.Length))

## 条形图
barplot(table(iris$Species))

#使用函数boxplot绘制盒图,以展示数据分布的中位数、
boxplot(Sepal.Length~Species, data=iris)

  #mtcars数据集
attach(mtcars)
mtcars
pie(apply(mtcars,2,mean)) #饼图
plot(wt, mpg) #散点图

2、实验结果(部分截图)

请添加图片描述

请添加图片描述

请添加图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兜里没有一毛钱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值