Hoe getallen uit strings in r te extraheren (met voorbeelden)
U kunt de volgende methoden gebruiken om getallen uit tekenreeksen in R te extraheren:
Methode 1: Extraheer het stringnummer met grondtal R
as. numeric (gsub(" \\D ", "", df$my_column))
Methode 2: Extraheer het stringnummer met behulp van het reader-pakket
library (readr)
parse_number(df$my_column)
In deze tutorial wordt uitgelegd hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe:
#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
Voorbeeld 1: Haal het getal uit een string met grondtal R
De volgende code laat zien hoe u de getallen uit elke tekenreeks in de positiekolom van het dataframe kunt extraheren:
#extract number from each string in 'position' column as. numeric (gsub(" \\D ", "", df$position)) [1] 23 14 2 25 6 99
Merk op dat de numerieke waarden uit elke string in de positiekolom zijn geëxtraheerd.
Opmerking : de functie gsub() vervangt eenvoudigweg alle niet-getallen ( \\D ) in een string door lege ruimte. Dit heeft tot gevolg dat alleen de getallen uit de string worden gehaald.
Als u wilt, kunt u deze numerieke waarden ook opslaan in een nieuwe kolom in het dataframe:
#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
Voorbeeld 2: Extraheer het getal uit een string met behulp van het Reader-pakket
De volgende code laat zien hoe u de getallen uit elke tekenreeks in de positiekolom van het dataframe kunt extraheren met behulp van de functie parse_number() uit het reader- pakket:
library (readr) #extract number from each string in 'position' column parse_number(df$position) [1] 23 14 2 25 6 99
Merk op dat de numerieke waarden uit elke string in de positiekolom zijn geëxtraheerd.
Dit komt overeen met de resultaten van het gebruik van de functie gsub() in basis R.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:
Hoe u kolommen selecteert die een specifieke tekenreeks bevatten in R
Hoe tekens uit een string in R te verwijderen
Hoe de tekenlocatie in een string in R te vinden