Membuat Lajur dengan Syarat If-Else-Else dalam Panda
Untuk mencipta lajur baharu berdasarkan keadaan if-elif-else , terdapat dua pendekatan utama:
Pendekatan Bukan Vektor
Pendekatan ini melibatkan penentuan fungsi yang beroperasi pada baris:
<code class="python">def f(row): if row['A'] == row['B']: val = 0 elif row['A'] > row['B']: val = 1 else: val = -1 return val</code>
Kemudian , gunakannya pada bingkai data di sepanjang baris:
<code class="python">df['C'] = df.apply(f, axis=1)</code>
Pendekatan Vektor
Pendekatan vektor menggunakan np.where untuk mencipta lajur baharu secara terus:
<code class="python">df['C'] = np.where( df['A'] == df['B'], 0, np.where( df['A'] > df['B'], 1, -1)) </code>
Pendekatan ini lebih cekap untuk set data yang besar.
Berikut ialah contoh menggunakan kerangka data yang disediakan:
Input DataFrame
A | B |
---|---|
2 | 2 |
3 | 1 |
1 | 3 |
Output DataFrame
A | B | C |
---|---|---|
2 | 2 | 0 |
3 | 1 | 1 |
1 | 3 | -1 |
Atas ialah kandungan terperinci Bagaimana untuk Mencipta Lajur Berdasarkan Keadaan If-Else-Else dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!