You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用%%运算符生成每4个元素仅末尾为1的循环向量?

用R语言的%%运算符构建特定循环向量

原代码1:nrow(mtcars) %% 4执行后生成的序列为:
1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0

需求:使用%%运算符构建每4个元素仅第4位为1、其余为0的循环向量,目标序列示例为:
0 0 0 1 0 0 0 1 0 0 0 1

实现方法

方法一:用ifelse做条件转换

通过判断取余结果是否为0,将0替换为1,其余替换为0:

ifelse(1:nrow(mtcars) %% 4 == 0, 1, 0)

方法二:将逻辑判断结果转为数值

R中逻辑值TRUE会被转为1,FALSE转为0,直接对取余等于0的结果做类型转换即可:

as.integer(1:nrow(mtcars) %% 4 == 0)

两种方法都能生成符合要求的循环向量,每4个元素里前三位为0,第四位为1,循环覆盖整个序列。

内容的提问来源于stack exchange,提问作者12666727b9

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 14:32:47