Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cepat kuasai mata pengetahuan utama penapisan data Pandas

Cepat kuasai mata pengetahuan utama penapisan data Pandas

WBOY
WBOYasal
2024-01-24 08:07:061223semak imbas

Cepat kuasai mata pengetahuan utama penapisan data Pandas

Kuasai mata pengetahuan utama penapisan data Pandas dengan cepat, contoh kod khusus diperlukan

Ikhtisar:
Pandas ialah perpustakaan analisis data yang berkuasa yang menyediakan fungsi dan alatan yang kaya untuk memproses dan menganalisis data. Antaranya, penapisan data ialah salah satu operasi penting dalam Pandas, yang boleh membantu kami mengekstrak maklumat yang kami minati daripada data. Artikel ini akan memperkenalkan mata pengetahuan utama mengenai penapisan data dalam Panda dan menyediakan contoh kod khusus untuk membantu pembaca menguasai kemahiran penting ini dengan cepat.

  1. Gunakan indeks Boolean untuk menapis data
    Indeks Boolean ialah kaedah penapisan berdasarkan ungkapan bersyarat, yang boleh menapis data berdasarkan keadaan tertentu. Berikut ialah contoh kod yang menggunakan indeks Boolean untuk menapis data:
import pandas as pd

# 创建一个示例数据
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [25, 30, 35, 40],
        'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)

# 筛选age大于30的数据
age_filter = df['age'] > 30
filtered_data = df[age_filter]
print(filtered_data)

Hasil keluaran:

      name  age gender
2  Charlie   35      M
3    David   40      M
  1. Gunakan kaedah isin() untuk menapis data
    isin() kaedah boleh digunakan untuk menyemak sama ada nilai dalam lajur berada dalam yang diberikan Dalam senarai, Siri nilai Boolean akan dikembalikan, menunjukkan sama ada setiap nilai memenuhi syarat. Berikut ialah kod sampel yang menggunakan kaedah isin() untuk menapis data:
import pandas as pd

# 创建一个示例数据
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [25, 30, 35, 40],
        'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)

# 筛选name在给定列表中的数据
filter_names = ['Alice', 'Charlie']
filtered_data = df[df['name'].isin(filter_names)]
print(filtered_data)

Hasil keluaran:

      name  age gender
0    Alice   25      F
2  Charlie   35      M
  1. Gunakan ungkapan bersyarat untuk menapis data
    Selain daripada dua kaedah yang biasa digunakan di atas, Pandas juga menyediakan lebih fleksibel ungkapan bersyarat Cara menapis data. Anda boleh menggunakan operator perbandingan (seperti >,
import pandas as pd

# 创建一个示例数据
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [25, 30, 35, 40],
        'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)

# 筛选年龄大于30且性别为男性的数据
filtered_data = df[(df['age'] > 30) & (df['gender'] == 'M')]
print(filtered_data)

Hasil keluaran:

      name  age gender
2  Charlie   35      M
3    David   40      M
  1. Gunakan kaedah query() untuk menapis data
    query() kaedah boleh menggunakan sintaks seperti SQL untuk menapis data, yang boleh menjadi lebih Tapis data secara intuitif dan padat. Berikut ialah contoh kod yang menggunakan kaedah query() untuk menapis data:
import pandas as pd

# 创建一个示例数据
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [25, 30, 35, 40],
        'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)

# 使用query()方法筛选年龄大于30且性别为男性的数据
filtered_data = df.query('age > 30 and gender == "M"')
print(filtered_data)

Hasil keluaran:

      name  age gender
2  Charlie   35      M
3    David   40      M

Ringkasan:
Artikel ini memperkenalkan mata pengetahuan utama penapisan data dalam Pandas dan menyediakan contoh kod khusus. Dengan menguasai mata pengetahuan ini, pembaca boleh mengekstrak maklumat yang diperlukan daripada sejumlah besar data dengan lebih cekap. Saya harap artikel ini dapat membantu pembaca menguasai kemahiran saringan data Pandas dengan cepat dan meningkatkan keupayaan analisis data mereka.

Atas ialah kandungan terperinci Cepat kuasai mata pengetahuan utama penapisan data Pandas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn