A B
2 3
5 7
7 4
2 8
有没有办法交换具体的观察结果?我试图交换A中的观察结果>比在同一行B中的观察结果。 在上面的data.frame中,列A(7)的第三行中的观察结果是>在B(4)栏的第三行中观察我的目标是交换两者。
期望的输出
A B
2 3
5 7
4 7
2 8
我尝试过使用&
df$A[df$A > df$B] <- df$B[df$A > df$B] & df$B[df$A >df$B] <- df$A[df$A >df$B]
我也尝试过嵌套的ifelse
ifelse(df$A > df$B, df$A[df$A > df$B] <- df$B[df$A > df$B],
ifelse(df$A > df$B, df$B[df$A >df$B] <- df$A[df$A >df$B], df$b))
非常感谢任何帮助。
德瑞
答案 0 :(得分:4)
我们可以使用apply
MARGIN=1
和sort
df1[] <- t(apply(df1, 1, sort))
df1
# A B
#1 2 3
#2 5 7
#3 4 7
#4 2 8
或重新排列&#39; A&#39;和&#39; B&#39;使用pmax/pmin
transform(df1, A=pmin(A,B), B= pmax(A,B))