[R] Very puzzled why swapping the columns doesn't swap the column names
jim holtman
jholtman at gmail.com
Mon Jun 16 14:18:21 CEST 2008
What you are doing with the assignment
m[,c(1,2)] <- m[,c(2,1)]
is only changing the values in the matrix; it knows nothing about the
names. If you want the names of the columns switched, then you have
to do it:
> m <- cbind(x=1:3, y=2:4, z=3:5)
> m
x y z
[1,] 1 2 3
[2,] 2 3 4
[3,] 3 4 5
> m[,c(1,2)] <- m[,c(2,1)]
> m
x y z
[1,] 2 1 3
[2,] 3 2 4
[3,] 4 3 5
> colnames(m)[c(1,2)] <- colnames(m)[c(2,1)]
> m
y x z
[1,] 2 1 3
[2,] 3 2 4
[3,] 4 3 5
>
On Mon, Jun 16, 2008 at 8:10 AM, Daren Tan <daren76 at hotmail.com> wrote:
>
> How can I swap the column names at the same time ?
>
>> m <- cbind(x=1:3, y=2:4, z=3:5)> m x y z[1,] 1 2 3[2,] 2 3 4[3,] 3 4 5
>> m[,c(1,2)] <- m[,c(2,1)]> m x y z[1,] 2 1 3[2,] 3 2 4[3,] 4 3 5
> _________________________________________________________________
>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
--
Jim Holtman
Cincinnati, OH
+1 513 646 9390
What is the problem you are trying to solve?
More information about the R-help
mailing list