4
如何基於兩列的值在熊貓中進行條件分配?從概念上類似以下內容:熊貓,基於列值的條件列分配
Column_D = Column_B/(Column_B + Column_C) if Column_C is not null else Column_C
具體的例子:
import pandas as pd
import numpy as np
df = pd.DataFrame({'b': [2,np.nan,4,2,np.nan], 'c':[np.nan,1,2,np.nan,np.nan]})
b c
0 2.0 NaN
1 NaN 1.0
2 4.0 2.0
3 2.0 NaN
4 NaN NaN
我想有一個新的列d
,其結果是由b
和c
總和b
列的劃分,如果c
不爲空,否則該值應該是列c
處的值。 概念上的東西像下面這樣:
df['d'] = df['b']/(df['b']+df['c']) if not df['c'].isnull() else df['c']
期望的結果:
b c d
0 2.0 NaN NaN
1 NaN 1.0 1.0
2 4.0 2.0 0.66
3 2.0 NaN NaN
4 NaN NaN NaN
我怎樣才能做到這一點?
簡短而親切。謝謝! – CentAu
@CentAu,歡迎您! :) – MaxU
@MaxU +1和gratz [熊貓]徽章。 – piRSquared