Rumah >pembangunan bahagian belakang >Tutorial Python >Apakah Perbezaan Antara `iloc` dan `loc` Panda untuk Pemilihan Data?

Apakah Perbezaan Antara `iloc` dan `loc` Panda untuk Pemilihan Data?

Barbara Streisand
Barbara Streisandasal
2024-12-16 18:04:21713semak imbas

What's the Difference Between Pandas' `iloc` and `loc` for Data Selection?

Bagaimana iloc dan loc Berbeza: Label lwn. Lokasi

Memahami Perbezaan

The perbezaan utama antara iloc dan loc terletak pada cara mereka mengakses baris dan lajur:

  • loc: Mengesan data menggunakan baris dan lajur label. Label ini biasanya nilai indeks atau nama lajur.
  • iloc: Mengesan data menggunakan baris dan lajur lokasi integer. Lokasi ini merujuk kepada kedudukan elemen dalam DataFrame.

Demonstrasi

Pertimbangkan contoh DataFrame di bawah:

Index Column A
0 John
1 Mary
2 Peter

Mengekstrak 5 yang pertama baris:

  • loc[:5]: Mengembalikan semua baris dengan label indeks 0 hingga 4 (termasuk).
  • iloc[ :5]: Mengembalikan 5 baris pertama di lokasi integer 0 hingga 4 (eksklusif).

Menjelaskan Perbezaan

Untuk menggambarkan lebih lanjut, pertimbangkan indeks tidak monotonik:

Index Series
49 a
48 b
47 c
0 d
1 e
2 f

Mengakses nilai pada label indeks 0:

  • loc[0] mengambil 'd' kerana menggunakan label indeks.
  • iloc[0] mengambil 'a ' kerana ia menggunakan lokasi integer (walaupun lokasi integer 'd' ialah 3).

Mengakses sepotong baris:

  • loc[0:1] mendapatkan semula baris dengan label indeks 0 dan 1 (termasuk) .
  • iloc[0:1] mendapatkan semula hanya baris di lokasi indeks 0 (dan tidak termasuk baris 1).

Pertimbangan Tambahan

  • Label yang tiada: loc menimbulkan KeyError jika label yang ditentukan tiada dalam indeks, manakala iloc mengembalikan IndexError.
  • Siri Boolean: loc boleh mengindeks melalui Siri Boolean, manakala iloc mengembalikan NotImplementedError.
  • Callables: loc dan iloc boleh kedua-duanya menggunakan boleh panggil sebagai pengindeks, tetapi mereka mengendalikan nilai di luar sempadan berbeza.

Atas ialah kandungan terperinci Apakah Perbezaan Antara `iloc` dan `loc` Panda untuk Pemilihan Data?. 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