11號在線 網(wǎng)站開發(fā)廣州seo推薦
案例 21: 條件運(yùn)算
知識點(diǎn)講解
在 Pandas 中進(jìn)行條件運(yùn)算可以用于創(chuàng)建新的列或修改現(xiàn)有的列,基于一定的條件邏輯。這些運(yùn)算通常結(jié)合布爾索引或 apply
方法進(jìn)行。
- 布爾條件運(yùn)算: 可以根據(jù)列之間的比較生成布爾值列。
apply
方法進(jìn)行條件運(yùn)算: 使用apply
方法可以在 DataFrame 的每行上執(zhí)行更復(fù)雜的條件運(yùn)算。
示例代碼
# 條件運(yùn)算
# 準(zhǔn)備數(shù)據(jù)和示例代碼的運(yùn)行結(jié)果,用于案例 21# 示例數(shù)據(jù)
data_conditional_operations = {'A': [10, 20, 30, 40, 50],'B': [5, 15, 25, 35, 45]
}
df_conditional_operations = pd.DataFrame(data_conditional_operations)# 條件運(yùn)算
df_conditional_operations['A_greater_than_B'] = df_conditional_operations['A'] > df_conditional_operations['B']
df_conditional_operations['A_plus_B_if_A_greater'] = df_conditional_operations.apply(lambda row: row['A'] + row['B'] if row['A'] > row['B'] else row['B'], axis=1)df_conditional_operations
在這個(gè)示例中,我們首先創(chuàng)建了一個(gè)布爾值列,表示 A
是否大于 B
。然后,我們使用 apply
方法添加了一個(gè)新列,如果 A
大于 B
,則該列為 A
和 B
的和,否則為 B
的值。
示例代碼運(yùn)行結(jié)果
A B A_greater_than_B A_plus_B_if_A_greater
0 10 5 True 15
1 20 15 True 35
2 30 25 True 55
3 40 35 True 75
4 50 45 True 95
這個(gè)結(jié)果展示了如何在 DataFrame 中進(jìn)行條件運(yùn)算,這對于基于某些條件邏輯創(chuàng)建新的數(shù)據(jù)列非常有用。