如何在 R 中的 2 行之间交换多个值

How to swap a number of the values between 2 rows in R

我有一个大小为 10x100 的矩阵。如何在前 30% 的列中交换第 1 行和第 2 行之间的值?

我们可以只反转前两行的行索引以及通过采用 rounded 30% 总列数的序列创建的列索引来交换行中的值。

colS <- seq(round(ncol(m1)*0.3))
m1[2:1, colS] <- m1[1:2, colS]

数据

m1 <- matrix(1:1000, 10, 100)