找回密码
 注册
查看: 3196|回复: 0

R语言中的正则向量

[复制链接]
发表于 2011-1-22 20:12:54 | 显示全部楼层 |阅读模式
R 有一系列产生常用数列的工具。如1:30 等价于向量c(1, 2, ..., 29, 30)。
在R表达式中,冒号优先级别最高,因此2*1:15 等价于c(2, 4, ..., 28, 30)。读
者可以认真将n <- 10,1:n-1,1n-1)相互比较一下。
30:1 形式的句法(construction)可用来产生一个逆向的数列。
函数seq() 是数列生成中最为常用的工具。它有五个参数,仅部分参数需要每次
都设定。起始的两个参数,表示一个数列的首尾。如果只是给定这两个值,则和冒号
运算符的效果完全一样了。如seq(2,10) 等价于2:10。
seq() 和其他许多R 函数的参数一样都可以用参数命名方式给定。在这情况下,
参数的顺序可以是任意的。这样,前两个参数就可以用from=value 和to=value 方式
设定;因此seq(1,30),seq(from=1, to=30),seq(to=30, from=1) 同1:30 完全一
样。seq() 随后的两个参数是by=value 和length=value;它们分别表示这个数列的步
长和长度。如果二者没有设定,默认值就是by=1(步长为1)。
例如
> seq(-5, 5, by=.2) -> s3
将向量c(-5.0, -4.8, -4.6, ..., 4.6, 4.8, 5.0) 赋给s3。类似的是,
> s4 <- seq(length=51, from=-5, by=.2)
将在s4 中产生一样的向量。
第五个参数是along=vector。使用这个参数时,它必须是唯一的4,它可以创建数
列1, 2, ..., length(vector),或者是空数列(在向量vector为空时)。
还有一个相关的函数是rep()。它可以用各种复杂的方式重复一个对象。最简单
的方式是
> s5 <- rep(x, times=5)
这种方式先把x 的完整拷贝五次,保持x 的数列顺序,逐一放在s5 中。另一种有用的
方式是
> s6 <- rep(x, each=5)
这种方式把x 中的每个元素都重复五次,然后将重复五次的元素逐一放入。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2025-5-2 05:27 , Processed in 0.022199 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表