Hapus baris yang berisi python teks tertentu

Modul panda di Python hadir dengan sejumlah fungsi bawaan untuk membantu Anda bekerja dengan dan memanipulasi data tabular. Dalam tutorial ini, kita akan melihat cara menghapus (atau menghapus) baris yang berisi string tertentu di kolom tertentu

Bagaimana Cara Menjatuhkan Baris yang Berisi String Tertentu?

Anda dapat menggunakan fungsi drop() bawaan panda untuk menghapus baris dari kerangka data. Lewati indeks baris untuk dijatuhkan (dalam kasus kami, indeks baris di mana kolom yang diberikan berisi string tertentu). Ini mengembalikan kerangka data yang dihasilkan setelah menjatuhkan baris yang disebutkan

Berikut ini adalah sintaksnya

# drop rows that contain a specific string in a given column
df.drop(df[df["col_name"].str.contains("string")].index)

Di sini, kami menggunakan pengakses .str_ pada kolom "col_name" dan memeriksa apakah itu berisi string "string", ini menghasilkan topeng boolean yang kami gunakan untuk memfilter kerangka data dan mendapatkan indeks baris untuk dijatuhkan yang kami berikan

Perhatikan bahwa fungsi drop()_ tidak mengubah kerangka data yang ada secara default, melainkan mengembalikan kerangka data yang dihasilkan

Sebagai alternatif, Anda juga dapat menggunakan pemfilteran boolean untuk mendapatkan hasil yang sama seperti di atas. Idenya adalah untuk memfilter kerangka data sedemikian rupa sehingga hanya memberi kita baris yang tidak berisi string yang diberikan di kolom yang disebutkan

Berikut ini adalah sintaksnya

# drop rows that contain a specific string in a given column
df[df["col_name"].str.contains("string")==False]
_

Ini akan memberi kita baris di mana kolom "col_name" tidak berisi string "string"

Contoh

Sekarang mari kita lihat beberapa contoh penggunaan sintaks di atas

Pertama, kita akan membuat kerangka data panda yang akan kita gunakan sepanjang tutorial ini

import pandas as pd

# cricket team data
data = {
   'Team': ['India', 'South Africa', 'Australia', 'Pakistan', 'Sri Lanka', 'West Indies', 'Netherlands', 'Bangladesh','England'],
   'Points': [10, 10, 8, 8, 7, 6, 7, 4,8],
   'Run Rate': [1.1, 1.3, 0.6, 0.1, 0.9, -0.5, -0.1, -1.0,1.5],
   'Group': ['A', 'B', 'A', 'A', 'C', 'B', 'C', 'B','C']
}

# create pandas dataframe
df = pd.DataFrame(data)
# display the dataframe
df

Keluaran

Hapus baris yang berisi python teks tertentu
Hapus baris yang berisi python teks tertentu

Di sini, kami membuat kerangka data dengan informasi tentang 8 tim yang bermain di turnamen kriket. Kerangka data memiliki kolom berikut – “Tim”, “Poin”, “Run Rate”, dan “Grup”

Contoh 1. Jatuhkan baris yang berisi string tertentu

Kode berikut menunjukkan cara menghapus semua baris dalam bingkai data di atas yang berisi "A" di kolom "Grup".

# drop rows that contain a specific string in a given column
df.drop(df[df["Group"].str.contains("A")].index)

Keluaran

Hapus baris yang berisi python teks tertentu
Hapus baris yang berisi python teks tertentu

Di sini, pertama-tama kita mendapatkan indeks baris yang berisi string "A" di kolom "Grup" dan kemudian meneruskan indeks ini ke fungsi drop() yang menjatuhkan baris yang sesuai dengan indeks tersebut

Contoh 2. Saring baris yang tidak berisi string tertentu

Alternatifnya, Anda bisa memfilter baris yang tidak Anda inginkan menggunakan pengindeksan boolean di bingkai data panda. Di sini, karena kami tidak ingin baris yang berisi string tertentu dalam kolom tertentu, kami akan memfilter baris ini

Mari kita ambil contoh yang sama dari atas. Hapus baris yang berisi "A" di kolom "Grup".

# drop rows that contain a specific string in a given column
df[df["Group"].str.contains("A")==False]
_

Keluaran

Hapus baris yang berisi python teks tertentu
Hapus baris yang berisi python teks tertentu

Kami mendapatkan hasil yang sama seperti di atas

Ringkasan

Dalam tutorial ini, kita melihat cara menghapus baris dari kerangka data yang berisi string tertentu di kolom tertentu. Berikut ini adalah metode yang dibahas -

  • Menggunakan fungsi panda drop(). Lewati indeks baris untuk dijatuhkan
  • Dengan memfilter kerangka data menggunakan pengindeksan boolean di kerangka data

Anda mungkin juga tertarik pada –

  • Jatuhkan Duplikat dari Pandas DataFrame
  • Pandas – Jatuhkan n baris pertama dari DataFrame
  • Pandas – Jatuhkan n baris terakhir dari DataFrame
  • Pandas – Jatuhkan Kolom Duplikat Dari Dataframe
  • Jatuhkan Baris dengan NaN di Pandas DataFrame
  • Pandas – Jatuhkan satu atau lebih Kolom dari Dataframe


Berlangganan buletin kami untuk panduan dan tutorial yang lebih informatif
Kami tidak melakukan spam dan Anda dapat memilih keluar kapan saja


Penulis

  • Hapus baris yang berisi python teks tertentu
    Hapus baris yang berisi python teks tertentu

    Piyush Raj

    Piyush adalah seorang profesional data yang bersemangat menggunakan data untuk memahami berbagai hal dengan lebih baik dan membuat keputusan berdasarkan informasi. Di masa lalu, dia bekerja sebagai Ilmuwan Data untuk ZS dan memegang gelar teknik dari IIT Roorkee. Hobinya termasuk menonton kriket, membaca, dan mengerjakan proyek sampingan

    Bagaimana cara menghapus baris yang berisi teks tertentu dengan Python?

    Sekarang, untuk menghapus baris dengan string tertentu, kita dapat menggunakan fungsi contains() dari perpustakaan panda. .
    Sintaksis. seri. str. berisi(string, case=True, flags=0, na=None, regex=True) Pengembalian – Seri atau indeks Nilai Boolean
    Sintaksis. df[ df[ "kolom" ]. str. berisi( "someString" )==False ]

    Bagaimana cara menjatuhkan baris yang berisi nilai tertentu?

    Control + Shift + L untuk menerapkan atau menghapus filter . Control + – (tahan tombol control dan tekan tombol minus) untuk menghapus sel/baris yang dipilih .

    Bagaimana cara menjatuhkan baris di panda dengan nilai tertentu?

    Kita dapat menggunakan fungsi nama_kolom bersama dengan operator untuk membuang nilai tertentu.

    Bagaimana Anda menghapus baris yang tidak diinginkan dengan Python?

    Untuk menghapus baris dari DataFrame, gunakan metode drop() dan atur label indeks sebagai parameter .