Python 数据帧中的多个条件-np.where
我有以下数据帧Python 数据帧中的多个条件-np.where,python,pandas,dataframe,if-statement,Python,Pandas,Dataframe,If Statement,我有以下数据帧 Year M 1991-1990 10 1992-1993 9 我试图这样做的是一个if语句:=if(M>9,左(年),右(C2,4))*1 所以基本上,如果M,如果10,选择列year的左边值,否则选择第二个值 我尝试使用np.where,但我不知道如何在同一列中的两个值之间进行选择 帮助?您可以执行以下操作: In [448]: df['val'] = np.where( df['M'].gt(9),\ ...:
Year M
1991-1990 10
1992-1993 9
我试图这样做的是一个if语句:=if(M>9,左(年),右(C2,4))*1
所以基本上,如果M,如果10,选择列year的左边值,否则选择第二个值
我尝试使用np.where,但我不知道如何在同一列中的两个值之间进行选择
帮助?您可以执行以下操作:
In [448]: df['val'] = np.where( df['M'].gt(9),\
...: df.Year.str.split('-').tolist()[0],\
...: df.Year.str.split('-').tolist()[1] )
In [444]: df
Out[444]:
Year M val
0 1991-1990 10 1991
1 1992-1993 9 1993