Bagaimana untuk Membuat Lajur Bersyarat Berdasarkan Pelbagai Keadaan dalam DataFrame Menggunakan Python?

Linda Hamilton
Lepaskan: 2024-10-20 06:52:02
asal
677 orang telah melayarinya

How to Create a Conditional Column Based on Multiple Conditions in a DataFrame Using Python?

Membuat Lajur Bersyarat Berdasarkan Pelbagai Syarat

Seperti yang dinyatakan dalam urutan yang diberikan, tugas di tangan ialah menjana lajur baharu dalam DataFrame berdasarkan syarat tertentu. DataFrame mengandungi dua lajur, 'A' dan 'B', dan lajur yang dikehendaki, 'C', hendaklah diberikan nilai berdasarkan perbandingan antara 'A' dan 'B'.

Syaratnya adalah seperti berikut :

  • Jika 'A' bersamaan dengan 'B', tetapkan 'C' kepada 0.
  • Jika 'A' lebih besar daripada 'B', tetapkan 'C' kepada 1.
  • Jika 'A' kurang daripada 'B', tetapkan 'C' kepada -1.

Untuk mencapai ini, fungsi Python boleh dibuat untuk menilai syarat dan menetapkan nilai yang sesuai kepada 'C' untuk setiap baris dalam DataFrame. Kaedah apply() boleh digunakan untuk menggunakan fungsi pada setiap baris, menghantar argumen 'axis=1' untuk menentukan bahawa fungsi harus beroperasi pada baris. Kod di bawah menunjukkan pendekatan ini:

<code class="python">def conditional_value(row):
    if row['A'] == row['B']:
        return 0
    elif row['A'] > row['B']:
        return 1
    else:
        return -1

df['C'] = df.apply(conditional_value, axis=1)</code>
Salin selepas log masuk

Pendekatan berasaskan fungsi ini menyediakan cara yang boleh dibaca dan disesuaikan untuk mencipta lajur bersyarat.

Sebagai alternatif, untuk prestasi yang lebih baik pada set data yang besar, vektor yang operasi boleh digunakan:

<code class="python">df['C'] = np.where(
    df['A'] == df['B'], 0, np.where(
    df['A'] > df['B'], 1, -1))</code>
Salin selepas log masuk

Di sini, fungsi np.where() digunakan untuk menilai keadaan dan menetapkan nilai yang sepadan kepada 'C' dengan cekap.

Atas ialah kandungan terperinci Bagaimana untuk Membuat Lajur Bersyarat Berdasarkan Pelbagai Keadaan dalam DataFrame Menggunakan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!