在一次调用中交换向量的两个元素

时间:2015-09-09 04:31:43

标签: r

我有一个向量c(9,6,3,4,2,1,5,7,8),我想在向量中切换索引2和索引5处的元素。但是,我不想创建一个临时变量,并希望在一次调用中进行切换。我该怎么做?

1 个答案:

答案 0 :(得分:11)

x[c(i,j)] <- x[c(j,i)]怎么样?与replace(...)类似,但也许更简单。

swtch <- function(x,i,j) {x[c(i,j)] <- x[c(j,i)]; x} 
swtch(c(9,6,3,4,2,1,5,7,8) , 2,5)
# [1] 9 2 3 4 6 1 5 7 8