python pandas-将列除以另一列

卡戎:

我正在尝试向我添加一列,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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Pandas / Python:根据另一列中的值设置一列的值

Python Pandas:将列值设置为另一列的出现次数

将函数应用到以另一列作为Python Pandas中参数的列

Python Pandas:根据另一列更改条件

根据另一列(Python,Pandas)中的值删除一列的重复项

python pandas-根据另一列的内容将列中的值更改为布尔值

Python Pandas:根据另一列的值更新行

Python Pandas分组并基于另一列排除值

Python Pandas将列中的子字符串替换为另一列中的子字符串

将基于另一列的列与Python和Pandas组合

在Python Pandas中找到一列的最小值大于另一列的值

Python Pandas Dataframe将列创建为另一列中出现的字符串数

相对地将python pandas列递减至另一列

Python pandas:如何更改(复杂)基于另一列的一列?

Python Pandas DataFrame检查一列的值是否在另一列表中

Python Pandas:将一列的值检查为另一数据框的列

Python Pandas在另一列的元素列表中找到一列的元素

根据另一列pandas python的值在python中添加新列

将所有值乘以一列python pandas

如何在Python Pandas中将一个数据框的列值与另一个数据框的列值相对应的一列除以另一列?

Python将列添加到Pandas数据框中,这是另一列中的列表元素的计数

将NAT日期替换为另一列Python Pandas中的数据

Python Pandas - 将子字符串从一列复制到另一列

将一个 df 中的每一列除以 Python 中另一个 df 中的每一列

python pandas数据框根据另一列的条件将列中的文本着色为红色、绿色或黑色

如何将一个 df 中的一列除以 pandas 中不同 df 中的另一列?

Pandas 基于另一列 python 获取一列中的唯一值

使用 Python pandas 从另一列驱动列

检查一列是否包含来自python pandas中另一列的数据