Cara Memfilter Baris di Pandas DataFrame Berdasarkan Nilai Kolom

Temp mail SuperHeros
Cara Memfilter Baris di Pandas DataFrame Berdasarkan Nilai Kolom
Cara Memfilter Baris di Pandas DataFrame Berdasarkan Nilai Kolom

Memfilter Baris di Pandas DataFrames

Pandas adalah perpustakaan yang kuat di Python untuk manipulasi dan analisis data. Tugas yang umum adalah memilih baris dari DataFrame berdasarkan nilai kolom, mirip dengan tabel SELECT * FROM SQL WHERE Column_name = some_value.

Panduan ini akan memandu Anda melalui berbagai metode untuk mencapai hal ini di Pandas, sehingga memudahkan Anda memfilter data secara efisien. Baik Anda seorang pemula atau pengguna berpengalaman, tips berikut akan meningkatkan keterampilan penanganan data Anda.

Memerintah Keterangan
pd.DataFrame(data) Membuat DataFrame dari kamus data.
df[column_name] Mengakses kolom di DataFrame berdasarkan nama.
df[condition] Memfilter DataFrame berdasarkan kondisi yang diterapkan pada kolom.
print(selected_rows) Mencetak DataFrame atau subsetnya ke konsol.
df[df['Age'] >df[df['Age'] > 25] Memilih baris yang nilai kolom 'Usia' lebih besar dari 25.
df[df['City'] == 'Chicago'] Memilih baris yang nilai kolom 'Kota' sama dengan 'Chicago'.

Memahami Pemilihan Baris DataFrame di Pandas

Skrip yang disediakan menunjukkan cara memilih baris dari DataFrame berdasarkan nilai kolom menggunakan perpustakaan Pandas dengan Python. Skrip pertama dimulai dengan mengimpor perpustakaan Pandas dengan file import pandas as pd memerintah. Kemudian membuat sampel DataFrame menggunakan kamus data, yang diubah menjadi DataFrame dengan pd.DataFrame(data) memerintah. Skrip kemudian mengilustrasikan dua metode untuk pemilihan baris: memilih baris yang nilai kolom 'Usia' lebih besar dari 25 menggunakan df[df['Age'] > 25], dan memilih baris dengan nilai kolom 'Kota' yang menggunakan 'Chicago' df[df['City'] == 'Chicago']. DataFrame yang difilter ini dicetak menggunakan print() berfungsi untuk menampilkan baris yang dipilih.

Skrip kedua mengikuti struktur serupa tetapi menggunakan data dan kriteria pemilihan yang berbeda. Ini membuat DataFrame dengan informasi produk, termasuk kolom 'Produk', 'Harga', dan 'Stok'. Baris dipilih dimana 'Harga' kurang dari atau sama dengan 200 dengan df[df['Price'] <= 200], dan dimana 'Stock' lebih dari 40 menggunakan df[df['Stock'] > 40]. Tujuan skrip ini adalah untuk memperlihatkan cara memfilter baris DataFrame berdasarkan kondisi tertentu, serupa dengan cara Anda menggunakan kueri SQL untuk memilih baris dari tabel berdasarkan nilai kolom. Dengan memahami dan menerapkan perintah ini, Anda dapat memanipulasi dan menganalisis data di DataFrames Anda secara efisien.

Memilih Baris dalam DataFrame Menggunakan Nilai Kolom di Pandas

Python dengan Perpustakaan Pandas

# Importing the necessary library
import pandas as pd

# Creating a sample DataFrame
data = {
    'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve'],
    'Age': [24, 27, 22, 32, 29],
    'City': ['New York', 'Los Angeles', 'Chicago', 'Houston', 'Phoenix']
}
df = pd.DataFrame(data)

# Selecting rows where Age is greater than 25
selected_rows = df[df['Age'] > 25]
print(selected_rows)

# Selecting rows where City is 'Chicago'
chicago_rows = df[df['City'] == 'Chicago']
print(chicago_rows)

Memfilter Data dalam DataFrame Berdasarkan Kriteria Kolom

Python dengan Perpustakaan Pandas

# Importing pandas library
import pandas as pd

# Creating a sample DataFrame
data = {'Product': ['A', 'B', 'C', 'D', 'E'],
        'Price': [100, 150, 200, 250, 300],
        'Stock': [30, 60, 90, 20, 50]}
df = pd.DataFrame(data)

# Selecting rows where Price is less than or equal to 200
affordable_products = df[df['Price'] <= 200]
print(affordable_products)

# Selecting rows where Stock is more than 40
in_stock = df[df['Stock'] > 40]
print(in_stock)

Teknik Tingkat Lanjut untuk Memilih Baris DataFrame di Pandas

Selain pemfilteran dasar menggunakan pengindeksan boolean, Pandas menawarkan teknik lanjutan untuk memilih baris berdasarkan nilai kolom. Salah satu metode ampuh adalah menggunakan query() fungsi, yang memungkinkan Anda memfilter baris dengan ekspresi kueri, menjadikan sintaksis lebih bersih dan seringkali lebih intuitif. Misalnya, daripada menggunakan df[df['Age'] > 25], kamu bisa menulis df.query('Age > 25'). Metode ini sangat berguna ketika berhadapan dengan kondisi yang lebih kompleks atau ketika nama kolom mengandung spasi. Selain itu, isin() Fungsi ini bermanfaat ketika Anda ingin memfilter baris berdasarkan daftar nilai. Misalnya, untuk memilih baris dengan nilai kolom 'Kota' adalah 'Chicago' atau 'New York', Anda dapat menggunakan df[df['City'].isin(['Chicago', 'New York'])].

Teknik lain melibatkan loc Dan iloc pengindeks. Itu loc pengindeks berbasis label, memungkinkan Anda memilih baris berdasarkan label baris dan nama kolom, sementara iloc berbasis lokasi bilangan bulat, memungkinkan pemilihan berdasarkan nomor baris dan kolom. Fleksibilitas ini sangat berguna untuk memilih baris berdasarkan kondisi yang diterapkan pada kolom berbeda. Contohnya, df.loc[df['Age'] > 25, 'Name'] akan mengembalikan nama individu yang berusia lebih dari 25 tahun. Metode ini memperluas perangkat Anda untuk menangani dan menganalisis data secara efisien di Pandas, menawarkan kode yang lebih mudah dibaca dan dipelihara.

Pertanyaan dan Jawaban Umum tentang Memilih Baris DataFrame

  1. Bagaimana cara memilih baris berdasarkan beberapa kondisi?
  2. Anda dapat menggunakan query() berfungsi atau menggabungkan kondisi dengan operator logika seperti & Dan |. Misalnya, df[(df['Age'] > 25) & (df['City'] == 'Chicago')].
  3. Bisakah saya memfilter baris berdasarkan daftar nilai?
  4. Ya, gunakan isin() fungsi. Contohnya, df[df['City'].isin(['Chicago', 'New York'])].
  5. Apa perbedaan antara loc Dan iloc?
  6. loc berbasis label, sementara iloc berbasis lokasi bilangan bulat. Menggunakan loc dengan label baris/kolom dan iloc dengan indeks baris/kolom.
  7. Bagaimana cara memilih kolom tertentu sambil memfilter baris?
  8. Anda dapat gunakan loc. Misalnya, df.loc[df['Age'] > 25, ['Name', 'City']].
  9. Bagaimana cara menangani nilai yang hilang saat memilih baris?
  10. Menggunakan dropna() berfungsi untuk menghapus baris dengan nilai yang hilang, atau fillna() untuk menggantinya dengan nilai tertentu.
  11. Bisakah saya menggunakan ekspresi reguler untuk memfilter baris?
  12. Ya, itu str.contains() berfungsi dengan regex=True parameter memungkinkan Anda memfilter baris berdasarkan pola regex. Misalnya, df[df['Name'].str.contains('^A', regex=True)].
  13. Bagaimana cara memfilter baris berdasarkan indeks?
  14. Anda dapat gunakan loc dengan nama indeks. Misalnya, df.loc[df.index == 'some_index'].
  15. Bagaimana jika nama kolom saya mengandung spasi atau karakter khusus?
  16. Menggunakan query() fungsi yang dapat menangani nama kolom tersebut dengan backticks. Misalnya, df.query('`column name` == value').

Pemikiran Akhir tentang Teknik Pemilihan Baris DataFrame

Memilih baris dari DataFrame berdasarkan nilai kolom di Pandas adalah keterampilan penting untuk manipulasi data. Berbagai metode yang dibahas, termasuk pengindeksan boolean, query(), isin(), dan pengindeksan berbasis label dan berbasis lokasi bilangan bulat dengan loc Dan iloc, menyediakan alat canggih untuk memfilter data secara efisien. Penguasaan teknik ini memungkinkan analisis data yang lebih baik dan kode yang lebih bersih dan mudah dipelihara.