查看原文
其他

每天学习一点R:5.向量

红皇后学术 红皇后学术 2022-06-07

向量

向量是相同类型的元素组成的有序集合,普通向量根据其元素的组成不同,可以分为数值型、字符型、逻辑型和复数型等等。

单一向量中,构成元素必须为同一类型的数据。

向量的建立

简单向量的创建

x = c(1,2,3,4)
x
[1] 1 2 3 4

使用上述命令即可创建一个最普通的数值型向量,如要创建字符型的向量,则需要在字符两端加上“”.

x = c("1","2","3","4")
x
[1] "1" "2" "3" "4"

如果输入的字符中本身带有“”,则在“”前加/即可。

有时可能需要将向量在不同类型之间进行转换

x = c(1,2,3,4)
x
[1] 1 2 3 4
as.character(x)
[1] "1" "2" "3" "4"
as.numeric(x)
[1] "1" "2" "3" "4"

创建随机向量

在数据分析的过程中,经常会用到一系列符合特定要求的随机数据,此时就要创建一个随机的数据向量。

均匀分布的随机数

runif(n,min=0,max=1)

  • n表示生成的随机数数量

  • min表示均匀分布的下限

  • max表示均匀分布的上限

若省略参数min、max,则默认生成[0,1]上的均匀分布随机数。

正态分布的随机数

rnorm(n,mean=0,sd=1)

  • n表示生成的随机数数量

  • mean是正态分布的均值,默认为0

  • sd是正态分布的标准差,默认时为1

二项式分布的随机数

rbinom(n,size,prob)

  • n表示生成的随机数数量

  • size表示进行贝努力试验的次数

  • prob表示一次贝努力试验成功的概率

指数分布的随机数

rexp(n,lamda=1)

  • n表示生成的随机数个数

  • lamda=1/mean

等差数列

a:b为以a开始,连续加1或减1到b的等差序列。

c(1:10)
[1] 1 2 3 4 5 6 7 8 9 10
c(10:1)
[1] 10 9 8 7 6 5 4 3 2 1

重复数据

rep(x,times,……)

  • x表示要重复的对象

  • times表示重复的次数

rep(c(1,2),4)
[1] 1 2 1 2 1 2 1 2
rep(c(1,2),each=4)
[1] 1 1 1 1 2 2 2 2

特定间隔的数据

seq(from,to,by)

  • from 给序列的起始值

  • to表示序列的终止值

  • by表示步长(by 省略时,表示步长值为1)

seq(1,10,2)
[1] 1 3 5 7 9

向量的计算

不同向量之间可以进行常规的数学计算。

数学运算意义比较运算意义
+加法<小于
-减法>大于
*乘法<=小于等于
/除法>=大于等于
^乘方==等于
%/%整除!=不等于

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存