Jak wyodrębnić liczby z ciągów w r (z przykładami)


Aby wyodrębnić liczby z ciągów znaków w R, możesz użyć następujących metod:

Metoda 1: Wyodrębnij numer ciągu przy użyciu podstawy R

 as. numeric (gsub(" \\D ", "", df$my_column))

Metoda 2: Wyodrębnij numer ciągu za pomocą pakietu readr

 library (readr)

parse_number(df$my_column)

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', 'A', 'A', 'B', 'B', 'B'),
                 position=c('Guard23', 'Guard14', '2Forward',
                            'Guard25', '6Forward', 'Center99'))

#view data frame
df

  team position
1A Guard23
2A Guard14
3 A 2Forward
4 B Guard25
5 B 6Forward
6 B Center99

Przykład 1: Wyodrębnij liczbę z ciągu znaków przy użyciu podstawy R

Poniższy kod pokazuje, jak wyodrębnić liczby z każdego ciągu znaków w kolumnie pozycji ramki danych:

 #extract number from each string in 'position' column
as. numeric (gsub(" \\D ", "", df$position))

[1] 23 14 2 25 6 99

Należy pamiętać, że wartości liczbowe zostały wyodrębnione z każdego ciągu znaków w kolumnie pozycji .

Uwaga : Funkcja gsub() po prostu zastępuje wszystkie liczby niebędące liczbami ( \\D ) w ciągu znaków pustą spacją. Powoduje to wyodrębnienie tylko liczb z ciągu.

Jeśli chcesz, możesz także zapisać te wartości liczbowe w nowej kolumnie w ramce danych:

 #create new column that contains numbers from each string in 'position' column
df$num <- as. numeric (gsub(" \\D ", "", df$position))

#view updated data frame
df

  team position number
1A Guard23 23
2A Guard14 14
3 A 2Forward 2
4 B Guard25 25
5 B 6Forward 6
6 B Center99 99

Przykład 2: Wyodrębnij liczbę z ciągu znaków za pomocą pakietu Reader

Poniższy kod pokazuje, jak wyodrębnić liczby z każdego ciągu znaków w kolumnie pozycji ramki danych za pomocą funkcji parse_number() z pakietu readr :

 library (readr)

#extract number from each string in 'position' column
parse_number(df$position)

[1] 23 14 2 25 6 99

Należy pamiętać, że wartości liczbowe zostały wyodrębnione z każdego ciągu znaków w kolumnie pozycji .

Odpowiada to wynikom użycia funkcji gsub() w bazie R.

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

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *