R语言基本操作(Rstudio中)

这篇博客介绍了R语言的基础操作,包括向量、矩阵的创建与操作,如`length()`、`sqrt()`等函数的使用。还展示了如何生成正态分布的随机数以及绘制正态分布的密度图。此外,讲解了`contour()`、`image()`和`persp()`三个画图函数,并给出了使用示例。最后,涉及到了矩阵的乘法和相关统计分析,如`cor()`、`mean()`、`var()`和`sd()`函数。
摘要由CSDN通过智能技术生成
rm(list=ls()) ##清空历史数据

x<-c(1,3,2,5) # x是一个向量,箭头表示赋值,把向量赋值给X
x1=c(1,3,2,5) # 等号表示储存,用X1来储存向量
?ls #问号+函数名,可以获得这个函数的帮助
length(x1) #求X1的长度
x<-c(1,6,2) 
y=c(1,4,3)  
x+y 
y1=c(1,4) #长度不一样不能相加
x+y1 #
ls() #以上运行变量是哪些
rm(x) #把变量X给remove
rm(list=ls()) #把所有变量X给remove,清空

?matrix #建立一个矩阵
x<-matrix(data = c(1,2,3,4), nrow = 2, ncol = 2)
#X是2行2列,默认是按列排
x1<-matrix(data = c(1,2,3,4), nrow = 2, ncol = 2, 
           byrow = FALSE,dimnames = NULL)
#按行是false,所以是按列排
x2<-matrix(data = c(1,2,3,4), nrow = 2, ncol = 2, 
           byrow = TRUE,dimnames = NULL)
#按行是true,所以是按行排
matrix(data = c(1,2,3,4), nrow = 2, ncol = 2, 
       byrow = TRUE,
       dimnames = list(c("row1", "row2"),c("C.1", "C.2" )))
#给行列命名
is.matrix(x) #判断是否是矩阵
sqrt(x)
sqrt(matrix(data = c(1,2,3,4), nrow = 2, ncol = 2, byrow = FALSE,dimnames = NULL))
 #对X开根号,是对每个位置每个值开根号
x^2 #平方,对每个元素都平方
###作业:X是矩阵,X^2(矩阵的平方),命令是什么?矩阵的乘法是怎么运算的。
x*x #表示对应位置数字相乘
x%*%x #表示矩阵乘法

?rnorm #正态分布
dnorm(0) == 1/sqrt(2*pi) #dnorm表示密度函数
dnorm(1) == exp(-1/2)/sqrt(2*pi)
dnorm(1) == 1/sqrt(2*pi*exp(1))
par(mfrow = c(2,1))
plot(function(x) dnorm(x, log = TRUE), -60, 50,
     main = "log { Normal density }")


set.seed(1) #设置一个种子,从而让生成的数是一样的
x<-rnorm(50) #均值为0,方差为1的随机生成的50个数
fix(x) #把X的值调出来

set.seed(1)
x1<-rnorm(50)
fix(x1) #同样产生50个数,但是是随机的,数据是不一样的

y=x+rnorm(50,mean = 50,sd=0.1) #均值是50,方差是0.1的50个数
cor(x,y) #求协方差
mean(x) #求x的均值
var(y) #求方差
sqrt(var(y)) #求标准差
sd(y) #求标准差,标准差的专门字母

density(x) #表示密度函数
hist(x) #表示直方图
plot(density(x)) #画密度函数的图
x<-rnorm(100) #正态随机变量
y<-rnorm(100) 
?plot
plot(x,y) #是一个散点图

plot(table(rpois(100, 5)), type = "l", col = "red", lwd = 10,
     main = "rpois(100, lambda = 5)")
#泊松分布的图,type类型是线,col颜色是红色
pdf("Figure.pdf") #把pdf进行输出来,把图像保存下来
plot(x,y,col="green") #变颜色
dev.off #看看图形有多少个
x=seq(1,10)
x=1:10
x=seq(-pi,pi,length=50)
#作业:contour()与image(),persp()三个画图函数自行验证,并给出例子与解释。


?contour
x <- -6:16
op <- par(mfrow = c(2, 2))
contour(outer(x, x), method = "edge", vfont = c("sans serif", "plain"))
z <- outer(x, sqrt(abs(x)), FUN = "/")


?image
x <- y <- seq(-4*pi, 4*pi, length.out = 27)
r <- sqrt(outer(x^2, y^2, "+"))
image(z = z <- cos(r^2)*exp(-r/6), col = gray.colors(33))


?persp
x <- seq(-10, 10, length.out = 30)
y <- x
f <- function(x, y) { r <- sqrt(x^2+y^2); 10 * sin(r)/r }
z <- outer(x, y, f)
z[is.na(z)] <- 1
op <- par(bg = "white")
persp(x, y, z, theta = 30, phi = 30, expand = 0.5, col = "lightblue")
persp(x, y, z, theta = 30, phi = 30, expand = 0.5, col = "lightblue",
      ltheta = 120, shade = 0.75, ticktype = "detailed",
      xlab = "X", ylab = "Y", zlab = "Sinc( r )"
) -> res
round(res, 3)


A=matrix(1:16,4,4) #4行4列,默认按列排
fix(A) #把A展示出来
A[2,3] #方括号,表示2行3列的数字
A[c(1,3),c(2,4)] #1/3行,2/4列的数
A[1:3,2:4] #1到3行,2到4列
A[1:2,] #1/2行
A[,1:2] #1/2列
A[-c(1,3),] #1和3行删除
A[-c(1,3),-c(1,3,4)] #减去重复的地方
dim(A) #维数
cor(A[1,],A[,3]) #求相关系数
mean(A[1,]) #平均值
var(A[1,]) #方差
sd(A[1,]) #标准差

———— Week 2 作业

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

田心木木夕_

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

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

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

打赏作者

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

抵扣说明:

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

余额充值