gpt4 book ai didi

r - 从 R 中的 (1, 2, 3, 4) 获取 (1, 2, 3, 4, 2, 3, 4, 3, 4, 4)

转载 作者:行者123 更新时间:2023-12-04 00:50:25 24 4
gpt4 key购买 nike

我有矢量

z1 <- c(1, 2, 3, 4) 

并想从中得到另一个向量

z2 <- c(1, 2, 3, 4,
2, 3, 4,
3, 4,
4)

我尝试了 rep() 函数的不同变体,但只得到了这个

z3 <- rep(z1, times=seq(length(z1), 1))

z3 <- c(1, 1, 1, 1,
2, 2, 2,
3, 3,
4)

z2 也可以用 for() 循环来完成

temp <- z1
res <- c()

for (i in 1:length(z1)){

res <- c(res, temp)
temp <- temp[-1]

}

res <- c(1, 2, 3, 4,
2, 3, 4,
3, 4,
4)

但是有什么方法可以用一个字符串内置函数如 rep() 将 z1 转换为 z2 吗?

最佳答案

你可以尝试 sapply + unlist + tail 如下所示

> unlist(sapply(-seq_along(z1), tail, x = c(NA, z1)))
[1] 1 2 3 4 2 3 4 3 4 4

关于r - 从 R 中的 (1, 2, 3, 4) 获取 (1, 2, 3, 4, 2, 3, 4, 3, 4, 4),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67009502/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com