如何使用 dplyr 按名称选择列


您可以使用以下方法通过dplyr包在 R 中按名称选择数据框的列:

方法1:按名称选择特定列

 df %>% select(var1, var3)

方法 2:按名称选择列范围

 df %>% select(var1:var3)

方法3:选择除部分列之外的所有列

 df %>% select(-c(var1, var3))

以下示例展示了如何在 R 中使用以下数据框实际使用每种方法:

 #create data frame
df <- data. frame (points=c(1, 5, 4, 5, 5, 7, 8),
                 rebounds=c(10, 3, 3, 2, 6, 7, 12),
                 assists=c(5, 5, 7, 6, 7, 9, 15),
                 blocks=c(1, 1, 0, 4, 3, 2, 10))

#view data frame
df

  points rebounds assists blocks
1 1 10 5 1
2 5 3 5 1
3 4 3 7 0
4 5 2 6 4
5 5 6 7 3
6 7 7 9 2
7 8 12 15 10

示例 1:按名称选择特定列

我们可以使用以下代码仅选择得分助攻列:

 library (dplyr)

#select only points and assists columns
df %>% select(points, assists)

  assist points
1 1 5
2 5 5
3 4 7
4 5 6
5 5 7
6 7 9
7 8 15

请注意,仅返回得分助攻列。

示例 2:按名称选择列范围

我们可以使用以下代码来选择助攻名称之间的所有列。

 library (dplyr)

#select all columns between points and assists
df %>% select(points:assists)

  points rebound assists
1 1 10 5
2 5 3 5
3 4 3 7
4 5 2 6
5 5 6 7
6 7 7 9
7 8 12 15

返回一系列列,从得分列开始,到助攻列结束。

示例 3:选择除某些列之外的所有列

我们可以使用以下代码来选择除得分助攻列之外的所有列。

 library (dplyr)

#select all columns except points and assists columns
df %>% select(-c(points, assists))

  rebound blocks
1 10 1
2 3 1
3 3 0
4 2 4
5 6 3
6 7 2
7 12 10

得分助攻列外,所有列都会返回。

注意:您可以在此处找到 dplyr 中select函数的完整文档。

其他资源

以下教程解释了如何在 dplyr 中执行其他常见操作:

如何使用 dplyr 按索引选择列
如何使用 dplyr 按组选择第一行

添加评论

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