Pandas: cara menghapus karakter tertentu dari string


Anda dapat menggunakan metode berikut untuk menghapus karakter tertentu dari string di kolom di pandas DataFrame:

Metode 1: Hapus karakter tertentu dari string

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

Metode 2: Hapus semua huruf dari string

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

Metode 3: Hapus semua nomor dari string

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

Contoh berikut menunjukkan cara menggunakan setiap metode dalam praktik dengan pandas DataFrame berikut:

 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

Contoh 1: Hapus karakter tertentu dari string

Kita dapat menggunakan sintaks berikut untuk menghapus “avs” dari setiap string di kolom tim :

 #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

Perhatikan bahwa “avs” telah dihapus dari baris yang berisi “Mavs” dan “Cavs” di kolom tim .

Contoh 2: Hapus semua huruf dari string

Kita dapat menggunakan sintaks berikut untuk menghapus semua huruf dari setiap string di kolom tim :

 #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

Perhatikan bahwa semua huruf telah dihapus dari setiap string di kolom tim .

Hanya nilai numerik yang tersisa.

Contoh 3: Hapus semua angka dari string

Kita dapat menggunakan sintaks berikut untuk menghapus semua angka dari setiap string di kolom tim :

 #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

Perhatikan bahwa semua nomor telah dihapus dari setiap string di kolom tim .

Hanya surat-suratnya saja yang tersisa.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:

Bagaimana cara mengganti nilai NaN dengan nol di Pandas
Bagaimana cara mengganti string kosong dengan NaN di Pandas
Cara mengganti nilai pada kolom berdasarkan kondisi di Pandas

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *