Сначала переместите ячейки, которые вы хотите сохранить, во второй ряд.
x[2,1:2] <- x[3,1:2]
Затем установите те, которые вы хотите пропустить, на NA
.
x[3,1:2] <- NA
Или, за один шаг,
x[2:3, 1:2] <- x[c(3,NA), 1:2]
Результат в любом случае:
> x
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 3 6 8
[3,] NA NA 9
Элементарная функция для этого может выглядеть как
excelremoveup <- function(mat, rows, cols) {
keep <- which(!(1:nrow(mat)) %in% rows)
keep <- c(keep, rep(NA, nrow(mat)-length(keep)))
mat[, cols] <- mat[keep, cols]
mat
}
Вы бы назвали это так.
excelremoveup(x,2,1:2)