查找数据框中是否存在列

我有一个名为“abcframe”的data.frame

abc 1 1 1 2 2 3 

我怎么能find一个列是否存在或不在给定的数据框? 例如,我想查找一个列d是否存在于data.frame abcframe中

假设您的数据框的名称是dat并且要检查的列名是"d" ,则可以使用%in%运算符%in%

 if("d" %in% colnames(dat)) { cat("Yep, it's in there!\n"); } 

您有许多选项,包括%in%grepl使用%in%

 dat <- data.frame(a=1:2, b=2:3, c=4:5) dat abc 1 1 2 4 2 2 3 5 

要获取列的名称:

 names(dat) [1] "a" "b" "c" 

%in%使用%in%来检查成员资格:

 "d" %in% names(dat) [1] FALSE Or use `grepl` to check for a match: grepl("d", names(dat)) [1] FALSE FALSE FALSE