Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menapis Baris Berdasarkan Julat Nilai dalam DataFrame Tanpa Nilai Kebenaran Samar-samar?
Memilih Baris Berdasarkan Julat Nilai dalam DataFrame
Apabila bekerja dengan DataFrames, anda mungkin perlu menapis baris berdasarkan julat tertentu nilai dalam lajur tertentu. Sebagai contoh, pertimbangkan DataFrame bernama df yang mengandungi lajur closing_price. Untuk mengekstrak baris yang nilai dalam closing_price jatuh antara 99 dan 101, kod berikut biasanya digunakan:
df[99 <= df['closing_price'] <= 101]
Walau bagaimanapun, kod ini mungkin mencetuskan ValueError yang menunjukkan "nilai kebenaran samar-samar bagi Siri." Ralat ini berlaku kerana perbandingan menghasilkan Siri nilai boolean dan cuba menggunakan ini secara langsung untuk pemilihan baris boleh menyebabkan kekaburan.
Nasib baik, terdapat kaedah yang lebih sesuai untuk mencapai penapisan ini tanpa menggunakan gelung . Berikut ialah kod yang diperbetulkan menggunakan Series.between():
df[df['closing_price'].between(99, 101)]
Series.between() menyediakan cara mudah untuk menyemak sama ada nilai dalam Siri berada dalam julat yang ditentukan. Kaedah ini mengambil dua hujah: sempadan bawah dan sempadan atas. Dalam contoh di atas, kami menyediakan 99 dan 101 sebagai sempadan bawah dan atas, masing-masing, untuk memilih baris yang closing_price berada di antara nilai ini.
Kaedah ini secara berkesan menyelesaikan isu kekaburan dengan mengembalikan Siri nilai boolean yang menunjukkan dengan jelas sama ada setiap baris memenuhi kriteria. Nilai boolean ini kemudiannya digunakan untuk menapis dan memilih baris yang dikehendaki daripada DataFrame.
Atas ialah kandungan terperinci Bagaimana untuk Menapis Baris Berdasarkan Julat Nilai dalam DataFrame Tanpa Nilai Kebenaran Samar-samar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!