R中创建数字向量有三个函数,c(),seq(),rep()。
今天学习下seq()和rep()
1、seq() 生成规律的序列
语法:
seq(from = 1, to = 1, by = ((to - from)/(length.out - 1)),
length.out = NULL, …)
解释:
from, to 开始和结束(最大)价值序列
by 数字:增量序列
length.out 所需的序列的长度,一个非负数字
例子
1)、指定增量,序列长度由系统计算
> seq(1,10,by=2)
[1] 1 3 5 7 9
#序列长度=5
2)、指定序列长度,增量系统由计算
> seq(1,10,length=5)
[1] 1.00 3.25 5.50 7.75 10.00
3)、指定序列长度=5,增量=2,但是报错了。。。
> seq(1,10,by=2,length=5)
错误于seq.default(1, 10, by = 2, length = 5) : 太多参数
错误原因:
查看了sql()的帮助,原来by 和length不能一起使用(所以报错信息是参数太多…..)
sql()的使用方法:
seq(from, to)
seq(from, to, by= )
seq(from, to, length.out= )
seq(along.with= )
seq(from)
seq(length.out= )
2、rep() 复制中的值x。
语法:
rep(x, …)
rep.int(x, times)
解析:
x 一个向量(任何方式包括列表)
…/times 进一步的参数被传递给或从其他方法
> rep(1,10)
[1] 1 1 1 1 1 1 1 1 1 1
#把1重复10次
> rep(1,times=10)
[1] 1 1 1 1 1 1 1 1 1 1
#把1重复10次
> rep(1:4,2)
[1] 1 2 3 4 1 2 3 4
#1:4,4个数字,整体复制2次,长度=8
> rep(1:4,each=2)
[1] 1 1 2 2 3 3 4 4
#1:4,4个数字,每个数字重复2次,长度=8
> rep(1:4, c(2,3,2,3))
[1] 1 1 2 2 2 3 3 4 4 4
#1:4,4个数字,每个数字重复c(2,3,2,3)次,即1重复2次,2重复3次,3重复2次,4重复3次
> rep(1:4,each=2,len=4)
[1] 1 1 2 2
#1:4,4个数字,每个数字重复2次,展示前4个数字,长度=4
> rep(1:4,each=2,len=8)
[1] 1 1 2 2 3 3 4 4
#1:4,4个数字,每个数字重复2次,展示前8个数字,长度=8
> rep(1:4,each=2,len=10)
[1] 1 1 2 2 3 3 4 4 1 1
#1:4,4个数字,每个数字重复2次,展示前10个数字(循环),长度=10
> rep(1:4,each=2,time=3)
[1] 1 1 2 2 3 3 4 4 1 1 2 2 3 3 4 4 1 1 2 2 3 3 4 4
#1:4 每个数重复2次,完整复制3次