Dalam perpustakaan panda Python, fungsi loc dan iloc digunakan untuk menghiris DataFrames. Walaupun mereka berkongsi beberapa persamaan, mereka berbeza dengan ketara dalam tujuan utama dan mekanisme asasnya.
loc beroperasi berdasarkan label, iaitu nilai indeks yang dikaitkan dengan baris atau lajur. Ia mendapatkan semula baris (atau lajur) dengan memadankan labelnya dengan kriteria pemilihan yang ditentukan. Sebagai contoh, df.loc[:5] akan mengembalikan lima baris pertama DataFrame, di mana label berada dalam tertib menaik.
iloc, sebaliknya, beroperasi berdasarkan lokasi integer. Ia memilih baris (atau lajur) berdasarkan kedudukannya dalam DataFrame. Contohnya, df.iloc[:5] juga akan mengembalikan lima baris pertama, tetapi pemilihannya adalah berdasarkan kedudukan ordinal (indeks berasaskan 0).
Pertimbangkan DataFrame berikut dengan indeks bukan monotonik:
s = pd.Series(list("abcdef"), index=[49, 48, 47, 0, 1, 2])
Menggunakan loc dan iloc untuk dapatkan semula lima elemen pertama:
s.loc[:5] # row by row label (inclusive) s.iloc[:5] # row by row location (exclusive)
Hasilnya berbeza:
0 d 1 e 2 f
49 a 48 b 47 c 0 d 1 e
Untuk meringkaskan perbezaan umum antara loc dan iloc:
Adalah penting untuk ambil perhatian bahawa iloc juga boleh beroperasi pada lajur DataFrame, tetapi sintaksnya tetap sama. loc, walau bagaimanapun, boleh menggunakan label paksi apabila memilih lajur, memberikan lebih fleksibiliti.
Untuk maklumat lanjut, rujuk dokumentasi panda tentang [pengindeksan dan penghirisan](https://pandas.pydata.org/docs/ panduan_pengguna/indexing.html).
Atas ialah kandungan terperinci Apakah Perbezaan Antara `loc` dan `iloc` panda untuk Pemilihan DataFrame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!