如何检查r中数据框中是否存在列


您可以使用以下方法检查 R 数据框中是否存在列:

方法一:检查数据框中是否存在准确的列名

 ' this_column ' %in% names(df)

方法2:检查数据框中是否存在部分列名

 any(grepl(' partial_name ', names(df)))

方法3:检查数据框中是否都存在多个精确的列名

 all(c(' this_column ', ' that_column ', ' another_column ') %in% names(df))

本教程通过以下数据框解释了如何在实践中使用每种方法:

 #create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34),
                 rebounds=c(30, 28, 24, 24, 28))

#view data frame
df

  team points assists rebounds
1 A 99 33 30
2 B 90 28 28
3 C 86 31 24
4 D 88 39 24
5 E 95 34 28

示例 1:检查数据框中是否存在确切的列名

以下代码显示如何检查数据框中是否存在“bounces”列的确切名称:

 #check if exact column name 'rebounds' exists in data frame
' rebounds ' %in% names(df)

[1] TRUE

输出返回TRUE

这告诉我们数据框中存在“bounces”列的确切名称。

注意:此语法区分大小写。这意味着如果我们使用“Rebounds”,我们将收到一个 FALSE 值,因为数据框中不存在带有大写字母的名称“Rebounds”。

示例 2:检查数据框中是否存在部分列名

以下代码显示如何检查数据框中是否存在部分列名称“tea”:

 #check if partial column name 'tea' exists in data frame
any(grepl(' tea ', names(df)))

[1] TRUE

输出返回TRUE

这告诉我们部分列名“tea”确实存在于数据框中。

示例 3:检查数据框中是否都存在多个精确列名

以下代码显示如何检查名称“team”、“points”和“blocks”是否都存在于数据框中:

 #check if three column names all exist in data frame
all(c(' team ', ' points ', ' blocks ') %in% names(df))

[1] FALSE

输出返回FALSE

这告诉我们,我们检查的三个列名并不全部存在于数据框中。

其他资源

以下教程解释了如何在 R 中执行其他常见任务:

如何在 R 中选择包含特定字符串的列
如何从R中的字符串中删除字符
如何在R中查找字符串中的字符位置

添加评论

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