2021-10-15 diff()、range()函数

1.diff()函数

diff() 是R语言中的一个简单函数。该函数有三个基本参数:x, lag = 1 和 differences = 1。
Returns suitably lagged and iterated differences.
返回适当的滞后和迭代差值。
其中 lag = 1 序列中要计算差值的两个数值之间的距离,
而参数 differences 表示计算差值的次数。

> (x <- cumsum(cumsum(1:10))) #生成一个累加的序列
 [1]   1   4  10  20  35  56  84 120 165 220
> diff(x) 
[1]  3  6 10 15 21 28 36 45 55
# 相当于4-1、10-4、20-10、…… 200-165
> diff(x, lag = 2)
[1]   9  16  25  36  49  64  81 100
# 间隔一位相减,相当于10-1、20-4、35-10…… 220-120
> diff(x, lag = 2, differences = 2)
[1] 16 20 24 28 32 36
# 进行了两次间隔的减法运算:25-9、36-16、…… 100-64

2.range()函数

Range返回一个包含所有给定参数的最小值和最大值的向量。

> range01 <- function(x){
+   rng <- range(x, na.rm = TRUE)
+   (x - rng[1] / rng[2] - rng[1])
+ }
> range(c(1, 8, 12, 20))
[1]  1 20
> range(c(1, 8, 12, 20))[1]
[1] 1
> range(c(1, 8, 12, 20))[2]
[1] 20
> range01(c(1, 8, 12, 20))
[1] -0.05  6.95 10.95 18.95

这里返回的结果有点让我摸不着头脑,待明白后再续……

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容