r - 重复序列 R
问题描述
我正在尝试使用以下内容在我的数据框的行中重复序列 0、1、2:
x <- c(1, 2, 3, 4, 5, 6, 7)
y <- c(1, 2, 3, 4, 5, 6, 7)
df <- cbind(x, y)
df <- as.data.frame(df)
df$W <- rep(0:2, nrow(df)/3)
df$W <- rep(0:1, nrow(df)/2)
这不起作用,因为替换有 6 行,数据有 7。我觉得必须有一个更简单的解决方案。我只希望它开始下一个序列,但在数据帧的最后一行完成时停止。所以W
只是 0, 1, 2, 0, 1, 2, 0。而另一个选项rep(0:1)
是 0, 1, 0, 1, 0, 1, 0
解决方案
使用length.out
选项
rep(0:2, length.out = nrow(df))
#[1] 0 1 2 0 1 2 0
rep(0:1, length.out = nrow(df))
#[1] 0 1 0 1 0 1 0
推荐阅读
- java - spring项目中大量的数据库迁移
- c++ - 生成集合的所有分区
- javascript - 剑道多选从列表中删除选定的项目
- spring - SpringBoot-微服务+Angular+MySQL+RabbitMQ的Docker化
- php - 错误 524 发生超时 | WordPress | Cloudflare
- scala - 火花流应用程序上的多个写入流
- python - Is there a proper variable to track how many times a loop has looped?
- .net-core - Maxmind 将新的 DatabaseReader 作为单调注入,以避免一次又一次地重新访问文件
- c# - 如何在 EmguCV 中设置相机的属性
- android - 如何为同一目的地注册多个 PendingIntent?