Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah saya boleh mengubah suai nilai tertentu dalam Pandas DataFrame berdasarkan nilai bersyarat menggunakan tugasan rantaian dan fungsi loc?

Bagaimanakah saya boleh mengubah suai nilai tertentu dalam Pandas DataFrame berdasarkan nilai bersyarat menggunakan tugasan rantaian dan fungsi loc?

Patricia Arquette
Lepaskan: 2024-10-26 03:31:02
asal
1017 orang telah melayarinya

How can I modify specific values in a Pandas DataFrame based on conditional values using chaining assignment and the loc function?

Penugasan Rantaian dan Fungsi Loc Pandas untuk Mengubah Suai Data Berdasarkan Nilai Bersyarat

Dalam perpustakaan Pandas Python, pengendalian manipulasi data boleh memberikan cabaran untuk mereka yang biasa dengan alat pengaturcaraan lain. Artikel ini menangani pertanyaan khusus mengenai lelaran ke atas data Pandas untuk mengubah suai nilai tertentu berdasarkan syarat.

Masalah:

Tugas di tangan ialah mengubah suai dua nilai, FirstName dan Nama Akhir, dalam DataFrame berdasarkan nilai padanan dalam lajur ID. Khususnya, apabila ID bersamaan dengan 103, FirstName dan LastName hendaklah digantikan dengan "Matt" dan "Jones," masing-masing.

Penyelesaian: Kaedah Alternatif

Pendekatan 1: Menggunakan Menghiris dan Mengindeks dengan Loc

Untuk mengubah suai data berdasarkan nilai bersyarat dalam Pandas, satu pendekatan yang berkesan ialah menggunakan fungsi loc. Fungsi ini membenarkan penilaian logik dan menulis ganti data berdasarkan syarat yang ditentukan.

<code class="python">import pandas
df = pandas.read_csv("test.csv")
df.loc[df.ID == 103, 'FirstName'] = "Matt"
df.loc[df.ID == 103, 'LastName'] = "Jones"</code>
Salin selepas log masuk

Pendekatan 2: Tugasan Berantai

Kaedah alternatif ialah tugasan berantai, yang melibatkan penugasan nilai kepada elemen tertentu dalam DataFrame berdasarkan keadaan. Walaupun kaedah ini tidak digalakkan kerana potensi ketidakstabilannya, kaedah ini tetap berguna untuk pemahaman:

<code class="python">import pandas
df = pandas.read_csv("test.csv")
df['FirstName'][df.ID == 103] = "Matt"
df['LastName'][df.ID == 103] = "Jones"</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengubah suai nilai tertentu dalam Pandas DataFrame berdasarkan nilai bersyarat menggunakan tugasan rantaian dan fungsi loc?. 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