Pandy: jak usunąć określone znaki z ciągów znaków


Możesz użyć następujących metod, aby usunąć określone znaki z ciągów w kolumnie w ramce DataFrame pandy:

Metoda 1: Usuń określone znaki z ciągów

 df[' my_column '] = df[' my_column ']. str . replace (' this_string ', '')

Metoda 2: Usuń wszystkie litery z ciągów

 df[' my_column '] = df[' my_column ']. str . replace (' \D ', '', regex= True )

Metoda 3: Usuń wszystkie liczby z ciągów

 df[' my_column '] = df[' my_column ']. str . replace (' \d+ ', '', regex= True )

Poniższe przykłady pokazują, jak w praktyce używać każdej metody z następującą ramką DataFrame pand:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs2', 'Nets44', 'Kings33', 'Cavs90', 'Heat576'],
                   ' points ': [12, 15, 22, 29, 24]})

#view DataFrame
print (df)

      team points
0 Mavs2 12
1 Nets44 15
2 Kings33 22
3 Cavs90 29
4 Heat576 24

Przykład 1: Usuń określone znaki z ciągów

Możemy użyć następującej składni, aby usunąć „avs” z każdego ciągu w kolumnie zespołu :

 #remove 'avs' from strings in team column
df[' team '] = df[' team ']. str . replace (' avs ', '')

#view updated DataFrame
print (df)

      team points
0 M2 12
1 Nets44 15
2 Kings33 22
3 C90 29
4 Heat576 24

Należy pamiętać, że „avs” zostało usunięte z wierszy zawierających „Mavs” i „Cavs” w kolumnie zespołu .

Przykład 2: Usuń wszystkie litery z ciągów

Możemy użyć następującej składni, aby usunąć wszystkie litery z każdego ciągu w kolumnie zespołu :

 #remove letters from strings in team column
df[' team '] = df[' team ']. str . replace (' \D ', '', regex= True )

#view updated DataFrame
print (df)

  team points
0 2 12
1 44 15
2 33 22
3 90 29
4,576 24

Należy pamiętać, że z każdego ciągu w kolumnie zespołu usunięto wszystkie litery.

Pozostają tylko wartości liczbowe.

Przykład 3: Usuń wszystkie liczby z ciągów

Możemy użyć następującej składni, aby usunąć wszystkie liczby z każdego ciągu w kolumnie zespołu :

 #remove numbers from strings in team column
df[' team '] = df[' team ']. str . replace (' \d+ ', '', regex= True )

#view updated DataFrame
print (df)

    team points
0 Mavs 12
1 Nets 15
2 Kings 22
3 Cavs 29
4 Heat 24

Należy pamiętać, że z każdego ciągu w kolumnie zespołu usunięto wszystkie liczby.

Zostały tylko litery.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w pandach:

Jak zamienić wartości NaN na zera w Pandach
Jak zamienić puste ciągi na NaN w Pandach
Jak zamienić wartości w kolumnie na podstawie warunku w Pandach

Dodaj komentarz

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