Rumah > pembangunan bahagian belakang > Tutorial Python > Loc vs. Iloc dalam Panda: Bilakah Saya Harus Menggunakan Setiap Satu untuk Menghiris?

Loc vs. Iloc dalam Panda: Bilakah Saya Harus Menggunakan Setiap Satu untuk Menghiris?

Susan Sarandon
Lepaskan: 2024-12-24 10:41:28
asal
161 orang telah melayarinya

Loc vs. Iloc in Pandas: When Should I Use Each for Slicing?

Loc vs. Iloc Slicing dalam Panda

Loc dan iloc ialah dua kaedah penghirisan yang biasa digunakan dalam Pandas, yang memberikan fleksibiliti dalam memilih baris dan lajur daripada DataFrame. Walau bagaimanapun, memahami perbezaan halus mereka boleh mengelirukan.

Perbezaan Utama: Label lwn. Lokasi

Perbezaan utama antara loc dan iloc terletak pada jenis pengindeksan yang mereka gunakan :

  • Lok: Beroperasi pada label, khususnya nilai sebenar dalam indeks atau label lajur.
  • Iloc: Beroperasi pada lokasi integer, mewakili kedudukan baris atau lajur dalam DataFrame.

Contoh:

Pertimbangkan DataFrame dengan integer bukan monotonik indeks:

df = pd.DataFrame({
    'a': [1, 2, 3],
    'b': [4, 5, 6],
    'c': [7, 8, 9]
}, index=[0, 2, 4])
Salin selepas log masuk

Lok:

  • df.loc[0] mengakses baris dengan label indeks 0, tanpa mengira lokasinya.
  • df.loc[0:1] mendapatkan semula baris dengan label indeks 0 dan 1.

Iloc:

  • df.iloc[0] mendapatkan semula baris di lokasi indeks 0, tanpa mengira label indeksnya.
  • df.iloc[0:1] hanya mengakses baris pertama kerana ia menentukan lokasi indeks sebagai integer.

Perbezaan Utama dalam Penggunaan:

Feature Loc Iloc
Indexing Labels Integer locations
Slicing Inclusive (by default) Exclusive (by default)
Out-of-bounds behavior KeyError IndexError
Negative indexing Supported Supported for final row only
Boolean masking NotImplementedError Supports boolean mask
Callable indexing Function applied to index Function applied to row or column

Bila Menggunakan Loc vs. Iloc:

  • Gunakan loc apabila anda perlu berdasarkan indeks pada label, seperti nama atau kategori tertentu.
  • Lebih suka iloc untuk pengindeksan berasaskan integer, terutamanya untuk operasi menghiris dengan titik mula dan tamat yang jelas.
  • Elakkan iloc untuk operasi penyamaran boolean atau pengindeksan berdasarkan logik syarat.

Atas ialah kandungan terperinci Loc vs. Iloc dalam Panda: Bilakah Saya Harus Menggunakan Setiap Satu untuk Menghiris?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan