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

R语言如何实现矩阵每个值复制后紧邻对应原值排列

实现方法

你之前得到复制值集中在后面的结果,大概率是直接用了cbind(mat, mat)的拼接逻辑,只要调整列索引的取值顺序就能轻松实现需求,核心代码仅需1行:

# mat为你的原始测量矩阵
res_mat <- mat[, rep(seq_len(ncol(mat)), each = 2)]

示例验证

我们用你给出的示例矩阵测试:

# 构造原始示例矩阵
mat <- matrix(
  c(1.647, 1.125, 0.559, 1.614, 1.578, 0.377,
    0.555, 0.395, 1.090, 0.896, 2.135, 1.184,
    0.269, 2.022, -0.184, 0.614, 1.128, 1.036),
  nrow = 3, byrow = TRUE
)

# 执行扩展
res_mat <- mat[, rep(seq_len(ncol(mat)), each = 2)]

# 查看第一行结果
print(res_mat[1, ])

输出第一行结果为:
1.647 1.647 1.125 1.125 0.559 0.559 1.614 1.614 1.578 1.578 0.377 0.377,和你要求的结构完全一致。
如果后续需要每个值重复更多次,只需修改each参数的取值即可。

内容的提问来源于stack exchange,提问作者gir emee

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 10:06:04