如何更改 r 中的两列:示例


有时您可能想要更改 R 数据框中两列的位置。幸运的是,使用以下两段代码之一可以轻松做到这一点:

选项 1:使用列语法。

 #define order of data frame columns
df <- df[c("col1", "col2", "col3", "col4")]

选项 2:使用行和列语法。

 #define order of data frame columns
df <- df[, c("col1", "col2", "col3", "col4")]

下面的例子说明了如何在实践中使用这两段代码。

示例 1:使用列语法更改两列

以下代码演示了如何创建具有四列的数据框,然后反转第一列和第三列的位置:

 #create data frame
df <- data.frame(col1=c(1, 2, 6, 3, 6, 6),
                 col2=c(4, 4, 5, 4, 3, 2),
                 col3=c(7, 7, 8, 7, 3, 3),
                 col4=c(9, 9, 9, 5, 5, 3))

#view data frame
df

  col1 col2 col3 col4
1 1 4 7 9
2 2 4 7 9
3 6 5 8 9
4 3 4 7 5
5 6 3 3 5
6 6 2 3 3

#switch positions of first and third column
df <- df[c("col3", "col2", "col1", "col4")]

#view new data frame
df

  col3 col2 col1 col4
1 7 4 1 9
2 7 4 2 9
3 8 5 6 9
4 7 4 3 5
5 3 3 6 5
6 3 2 6 3

示例 2:使用行和列语法更改两列

以下代码演示了如何创建具有四列的数据框,然后反转第一列和第三列的位置:

 #create data frame
df <- data.frame(col1=c(1, 2, 6, 3, 6, 6),
                 col2=c(4, 4, 5, 4, 3, 2),
                 col3=c(7, 7, 8, 7, 3, 3),
                 col4=c(9, 9, 9, 5, 5, 3))

#view data frame
df

  col1 col2 col3 col4
1 1 4 7 9
2 2 4 7 9
3 6 5 8 9
4 3 4 7 5
5 6 3 3 5
6 6 2 3 3

#switch positions of first and third column
df <- df[, c("col3", "col2", "col1", "col4")]

#view new data frame
df

  col3 col2 col1 col4
1 7 4 1 9
2 7 4 2 9
3 8 5 6 9
4 7 4 3 5
5 3 3 6 5
6 3 2 6 3

请注意,这两种方法都会产生相同的结果。

其他资源

如何对 R 中的特定列求和
如何在 R 中对列进行平均

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注