Hoe een getal uit een string te extraheren in pandas


U kunt de volgende basissyntaxis gebruiken om getallen uit een tekenreeks in panda’s te extraheren:

 df[' my_column ']. str . extract (' (\d+) ')

Deze specifieke syntaxis extraheert de getallen uit elke tekenreeks in een kolom met de naam my_column in een pandas DataFrame.

Opmerking : bij gebruik van een reguliere expressie staat \d voor ‚elk cijfer‘ en + voor ‚een of meer‘.

Het volgende voorbeeld laat zien hoe u deze functie in de praktijk kunt gebruiken.

Voorbeeld: haal het getal uit een string in Pandas

Stel dat we het volgende panda’s DataFrame hebben dat informatie bevat over de verkoop van verschillende producten:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' product ': ['A33', 'B34', 'A22', 'A50', 'C200', 'D7', 'A9', 'A13'],
                   ' sales ': [18, 22, 19, 14, 14, 11, 20, 28]})

#view DataFrame
print (df)

  product sales
0 A33 18
1 B34 22
2 A22 19
3 A50 14
4 C200 14
5 D7 11
6 A9 20
7 A13 28

Stel dat we het nummer van elke string uit de productkolom willen halen.

We kunnen hiervoor de volgende syntaxis gebruiken:

 #extract numbers from strings in 'product' column
df[' product ']. str . extract (' (\d+) ')

	0
0 33
1 34
2 22
3 50
4,200
5 7
6 9
7 13

Het resultaat is een DataFrame dat alleen de getallen in elke rij van de Product- kolom bevat.

Bijvoorbeeld:

  • De formule haalt 33 uit de tekenreeks A33 op de eerste regel.
  • De formule haalt 34 uit de tekenreeks B34 op de eerste regel.
  • De formule haalt 22 uit de tekenreeks A22 in de eerste rij.

Enzovoort.

Als je wilt, kun je deze numerieke waarden ook opslaan in een nieuwe kolom van het DataFrame:

 #extract numbers from strings in 'product' column and store them in new column
df[' product_numbers '] = df[' product ']. str . extract (' (\d+) ')

#view updated DataFrame
print (df)

  product sales product_numbers
0 A33 18 33
1 B34 22 34
2 A22 19 22
3 A50 14 50
4 C200 14,200
5 D7 11 7
6 A9 20 9
7 A13 28 13

De nieuwe kolom met de naam productnummers bevat alleen de getallen voor elke tekenreeks in de productkolom .

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:

Panda’s: Hoe DataFrame te sorteren op basis van een stringkolom
Panda’s: specifieke tekens uit tekenreeksen verwijderen
Panda’s: zoek naar een string in alle kolommen van DataFrame

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert