Ответ 1
Предполагая, что имя вашего фрейма данных dat
и что ваше имя столбца для проверки равно "d"
, вы можете использовать оператор %in%
:
if("d" %in% colnames(dat))
{
cat("Yep, it in there!\n");
}
У меня есть data.frame с именем "abcframe"
a b c
1 1 1
2 2 3
Как я могу определить, существует или нет столбец в данном фрейме данных? Например, я хотел бы найти, существует ли столбец d в файле data.frame abcframe.
Предполагая, что имя вашего фрейма данных dat
и что ваше имя столбца для проверки равно "d"
, вы можете использовать оператор %in%
:
if("d" %in% colnames(dat))
{
cat("Yep, it in there!\n");
}
У вас есть ряд опций, включая использование %in%
и grepl
:
dat <- data.frame(a=1:2, b=2:3, c=4:5)
dat
a b c
1 1 2 4
2 2 3 5
Чтобы получить имена столбцов:
names(dat)
[1] "a" "b" "c"
Используйте %in%
для проверки принадлежности:
"d" %in% names(dat)
[1] FALSE
Or use `grepl` to check for a match:
grepl("d", names(dat))
[1] FALSE FALSE FALSE
Вы можете использовать any
:
> names(dat)
[1] "a" "b" "c"
> any(names(dat) == 'b')
[1] TRUE
> any(names(dat) == 'B')
[1] FALSE