我正在尝试向我添加一列,DataFrame
这是另外两列相除的结果,如下所示:
df['$/hour'] = df['$']/df['hours']
这工作正常,但是如果in中的值['hours']
小于1
,则该['$/hour']
值大于in中的值['$']
,这不是我想要的。
有没有一种控制操作的方式,如果['hours'] < 1
这样df['$/hour'] = df['$']
呢?
您可以使用numpy.where
:
print df
hours $
0 0 8
1 0 9
2 0 9
3 3 6
4 6 4
5 3 7
6 5 5
7 10 1
8 9 3
9 3 6
10 5 4
11 5 7
df['$/hour'] = np.where(df['hours'] < 1, df['hours'], df['$']/df['hours'])
print df
hours $ $/hour
0 0 8 0.000000
1 0 9 0.000000
2 0 9 0.000000
3 3 6 2.000000
4 6 4 0.666667
5 3 7 2.333333
6 5 5 1.000000
7 10 1 0.100000
8 9 3 0.333333
9 3 6 2.000000
10 5 4 0.800000
11 5 7 1.400000
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句