我有以下数据框
Year M
1991-1990 10
1992-1993 9
我要这样做的是一个if语句: = IF(M> 9,LEFT(Year),RIGHT(C2,4))* 1
所以基本上,如果M如果10选择列年份的左值,则选择第二个值
我尝试使用np.where,但是我不知道如何在同一列的两个值之间进行选择。
帮助?
答案 0 :(得分:1)
您可以这样做:
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