Bagaimana untuk mensubset kerangka data dengan satu atau berbilang lajur?

Apabila cuba memahami DataFrame yang besar dalam Pandas, anda mungkin perlu mensubsetkannya mengikut lajur dan baris. Dalam tutorial ini kami akan menunjukkan kes penggunaan yang paling lazim bagi pembahagian lajur DataFrame anda.

Kami akan mulakan dengan menyediakan contoh DataFrame kami, yang akan kami lakukan dengan menjalankan kod Python berikut dalam persekitaran kegemaran kami (untuk memudahkan, saya menggunakan Anaconda dan Jupyter Lab).

import pandas as pd # import the pandas library

languages = ({"language": [ "Python", "C-Sharp", "Javascript","PHP"] ,
         "avg_difficulty_level": [3, 2, 2, 1],
              "avg_salary": [120, 100, 120, 80],
          "applications": [10,15,14,20]})

# Now let's convert our dict to a DataFrame

languages = pd.DataFrame.from_dict(languages)

Sekarang, mari kita lihat baris pertama Bingkai Data kami menggunakan kaedah head().

languages.head()

Seperti yang anda lihat, ini adalah DataFrame yang cukup mudah yang akan kami gunakan sebagai contoh dalam siaran ini:

  bahasa purata_tahap_kesukaran purata_gaji aplikasi
0 Ular sawa 3 120 10
1 C-Sharp 2 100 15
2 Javascript 2 120 14
3 PHP 1 80 20

Menapis satu lajur

Kami akan mulakan dengan kes yang paling mudah, iaitu subset satu lajur daripada set data kami. Menjalankan arahan berikut akan mencipta objek Siri:

Mengikut nama / label

languages["language"]

Outputnya ialah Siri:

0 Python
1 C-Sharp
2 Javascript
3 PHP
Nama: bahasa, dtype: objek
type(languages["language"])

panda.core.series.Series

Mengikut indeks

Perintah berikut juga akan mengembalikan Siri yang mengandungi lajur pertama

languages.iloc[:,0]

Memilih berbilang lajur

Dengan nama

Apabila menghantar senarai lajur, Pandas akan mengembalikan DataFrame yang mengandungi sebahagian daripada data.

languages[["language", "applications"]]
  bahasa aplikasi
0 Ular sawa 10
1 C-Sharp 15
2 Javascript 14
3 PHP 20

Mengikut label (dengan lokasi)

df.loc[:,["language","applications"]]

Hasilnya akan serupa.

Mengikut indeks

Sekarang mari kita dapatkan berbilang lajur dengan menggunakan indeks:

languages.iloc[: ,[0,3]]
  bahasa aplikasi
0 Ular sawa 10
1 C-Sharp 15
2 Javascript 14
3 PHP 20

Dengan syarat

Dalam kes ini, kami hanya akan menunjukkan lajur nama yang sepadan dengan ungkapan tertentu. Kami akan menggunakan kaedah penapis yang agak berguna :

languages.filter(axis = 1, like="avg")

Nota:

  1. kita juga boleh menapis mengikut ungkapan biasa tertentu (regex).
  2. Kita boleh menggunakan paksi parameter=0 untuk menapis mengikut nilai baris tertentu.

Tapis baris tertentu mengikut syarat

Berikut ialah cara yang agak mudah untuk mensubsetkan DataFrame mengikut nilai baris:

languages[(languages["applications"] > 15)]

Kami hanya mempunyai satu hasil:

languages[(languages["applications"] > 15)]
  bahasa purata_tahap_kesukaran purata_gaji aplikasi
3 PHP 1 80 20

Tinggalkan Komen

Semak Semak Perancangan Acara Boleh Cetak & Templat Belanjawan untuk Word

Semak Semak Perancangan Acara Boleh Cetak & Templat Belanjawan untuk Word

Gunakan semak semak perancangan acara boleh cetak dan templat belanjawan dalam Word ini untuk mengesan pemilik, tarikh akhir, kos, vendor, dan kesediaan hari acara dengan pemeriksaan kualiti yang jelas.

Cara Membaiki Formula Excel yang Tidak Mengira Secara Automatik dalam 3 Langkah Mudah

Cara Membaiki Formula Excel yang Tidak Mengira Secara Automatik dalam 3 Langkah Mudah

Baiki formula Excel yang tidak mengira secara automatik dalam tiga langkah: pulihkan mod pengiraan, paksa pengiraan semula, dan baiki formula yang diformatkan sebagai teks.

Templat Jadual Pembersihan Mingguan Boleh Cetak untuk Hos Airbnb (Word & PDF)

Templat Jadual Pembersihan Mingguan Boleh Cetak untuk Hos Airbnb (Word & PDF)

Gunakan jadual pembersihan mingguan boleh cetak ini untuk hos Airbnb bagi mengatur penggantian tetamu, pembersihan berulang, pengisian semula, pemeriksaan, dan penyerahan daripada Word ke PDF.

Templat Lembaran Log Penyelenggaraan Peralatan Excel untuk Pengurus Bengkel: Panduan Penyediaan 4 Langkah

Templat Lembaran Log Penyelenggaraan Peralatan Excel untuk Pengurus Bengkel: Panduan Penyediaan 4 Langkah

Bina log penyelenggaraan peralatan Excel yang praktikal untuk pengurus bengkel dengan ID aset, sejarah servis, tarikh luput, kawalan status, penjejakan masa henti, dan senarai semak audit akhir.

Templat PowerPoint Pitch Deck Pelabur Minimalis untuk Startup Teknologi: Pelan Kerja 12 Slaid yang Praktikal

Templat PowerPoint Pitch Deck Pelabur Minimalis untuk Startup Teknologi: Pelan Kerja 12 Slaid yang Praktikal

Bina pitch deck pelabur minimalis dalam PowerPoint dengan struktur 12 slaid yang praktikal untuk startup teknologi, serta panduan mengenai bukti, metrik, dakwaan pengumpulan dana, dan templat .potx yang boleh digunakan semula.

Templat PowerPoint Pembentangan Senarai Hartanah Moden Percuma: Pelan Praktikal Pitch Penjual

Templat PowerPoint Pembentangan Senarai Hartanah Moden Percuma: Pelan Praktikal Pitch Penjual

Bina pembentangan senarai hartanah moden dalam PowerPoint dengan pelan slaid percuma, tip templat disahkan, amaran CMA, semakan hak foto, dan perlindungan Perumahan Adil.

HubSpot Free CRM vs. Zoho CRM: Pilihan Terbaik untuk Ejen Hartanah Solo pada 2026

HubSpot Free CRM vs. Zoho CRM: Pilihan Terbaik untuk Ejen Hartanah Solo pada 2026

Bandingkan HubSpot Free CRM dan Zoho CRM untuk ejen hartanah solo, termasuk kenalan, saluran jualan, automasi, penyesuaian, penjadualan, had, dan pencetus naik taraf.

Cara Membaiki Audio Rakaman Skrin PowerPoint yang Tidak Berfungsi pada Windows

Cara Membaiki Audio Rakaman Skrin PowerPoint yang Tidak Berfungsi pada Windows

Baiki rakaman skrin PowerPoint yang senyap dengan memeriksa kawalan Audio, kebenaran mikrofon Windows, peranti input aktif, jangkaan audio sistem, dan kemas kini Office.

Templat PDF Penjadualan Masa Harian Boleh Cetak untuk Profesional WFH: Panduan Pemula

Templat PDF Penjadualan Masa Harian Boleh Cetak untuk Profesional WFH: Panduan Pemula

Gunakan templat PDF penjadualan masa harian boleh cetak untuk merancang jam kerja fokus WFH, mesyuarat, rehat, tugas pentadbiran, dan penimbal yang realistik tanpa memuatkan hari anda secara berlebihan.

Templat Pembentangan Laporan Status Projek Percuma untuk Pasukan Agile

Templat Pembentangan Laporan Status Projek Percuma untuk Pasukan Agile

Bina pembentangan laporan status projek Agile yang ringkas dengan matlamat sprint, hasil, risiko, isyarat kualiti, keputusan, dan langkah seterusnya—tanpa menjadikan slaid sebagai timbunan backlog.