Jak sprawdzić, czy kolumna istnieje w ramce danych w r
Możesz użyć następujących metod, aby sprawdzić, czy kolumna istnieje w ramce danych w R:
Metoda 1: Sprawdź, czy w ramce danych istnieje dokładna nazwa kolumny
' this_column ' %in% names(df)
Metoda 2: Sprawdź, czy w ramce danych istnieje częściowa nazwa kolumny
any(grepl(' partial_name ', names(df)))
Metoda 3: Sprawdź, czy w ramce danych istnieje wiele dokładnych nazw kolumn
all(c(' this_column ', ' that_column ', ' another_column ') %in% names(df))
W tym samouczku wyjaśniono, jak w praktyce używać każdej metody z następującą ramką danych:
#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
Przykład 1: Sprawdź, czy w ramce danych istnieje dokładna nazwa kolumny
Poniższy kod pokazuje, jak sprawdzić, czy w ramce danych istnieje dokładna nazwa kolumny „odbicia”:
#check if exact column name 'rebounds' exists in data frame ' rebounds ' %in% names(df) [1] TRUE
Dane wyjściowe zwracają wartość TRUE .
To mówi nam, że dokładna nazwa kolumny „odbicia” istnieje w ramce danych.
Uwaga : w tej składni rozróżniana jest wielkość liter. Oznacza to, że gdybyśmy użyli „Rebounds”, otrzymalibyśmy wartość FALSE, ponieważ nazwa „Rebounds” pisana wielką literą nie istnieje w ramce danych.
Przykład 2: Sprawdź, czy w ramce danych istnieje częściowa nazwa kolumny
Poniższy kod pokazuje, jak sprawdzić, czy w ramce danych istnieje częściowa nazwa kolumny „tea”:
#check if partial column name 'tea' exists in data frame any(grepl(' tea ', names(df))) [1] TRUE
Dane wyjściowe zwracają wartość TRUE .
To mówi nam, że częściowa nazwa kolumny „tea” rzeczywiście istnieje w ramce danych.
Przykład 3: Sprawdź, czy w ramce danych istnieje wiele dokładnych nazw kolumn
Poniższy kod pokazuje, jak sprawdzić, czy w ramce danych istnieją nazwy „zespół”, „punkty” i „bloki”:
#check if three column names all exist in data frame all(c(' team ', ' points ', ' blocks ') %in% names(df)) [1] FALSE
Dane wyjściowe zwracają FAŁSZ .
To mówi nam, że nie wszystkie trzy nazwy kolumn, które sprawdziliśmy, istnieją w ramce danych.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:
Jak wybrać kolumny zawierające określony ciąg w R
Jak usunąć znaki z ciągu w R
Jak znaleźć lokalizację znaku w ciągu w R