Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah Saya Boleh Mengubah Suai Nilai Khusus dalam Lajur Pandas DataFrame Berdasarkan Syarat?

Bagaimanakah Saya Boleh Mengubah Suai Nilai Khusus dalam Lajur Pandas DataFrame Berdasarkan Syarat?

DDD
DDDasal
2024-10-26 03:34:27471semak imbas

How Can I Modify Specific Values in Pandas DataFrame Columns Based on a Condition?

Mengubah Nilai Berdasarkan Keadaan dalam Panda

Soalan ini mengemukakan situasi di mana nilai khusus dalam dua lajur, FirstName dan LastName, perlu diubah suai berdasarkan keadaan lajur ID yang sepadan dengan nilai tertentu. Dalam Stata, ini boleh dicapai menggunakan perintah ganti yang mudah.

Dalam Pandas, perpustakaan Python yang berkuasa untuk manipulasi data, satu pendekatan ialah memanfaatkan fungsi loc dengan ciri pengindeksan. Ini membolehkan penilaian logik dan pengubahsuaian data seterusnya. Sebagai contoh:

<code class="python">import pandas as pd

df = pd.read_csv("test.csv")
df.loc[df.ID == 103, 'FirstName'] = "Matt"
df.loc[df.ID == 103, 'LastName'] = "Jones"</code>

Sebagai alternatif, tugasan kepada kedua-dua lajur boleh dilakukan dalam satu langkah:

<code class="python">df.loc[df.ID == 103, ['FirstName', 'LastName']] = 'Matt', 'Jones'</code>

Perhatikan bahawa Pandas versi 0.11 atau lebih tinggi diperlukan untuk operasi penugasan ganti loc. Untuk versi yang lebih lama, tugasan berantai ialah penyelesaian yang berdaya maju:

<code class="python">df['FirstName'][df.ID == 103] = "Matt"
df['LastName'][df.ID == 103] = "Jones"</code>

Walaupun tugasan berantai pada umumnya harus dielakkan dalam versi Pandas moden, ia tetap menjadi teknik yang berguna untuk diketahui untuk keserasian dengan versi yang lebih lama.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Suai Nilai Khusus dalam Lajur Pandas DataFrame Berdasarkan Syarat?. 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