为了账号安全,请及时绑定邮箱和手机立即绑定

Pandas 数据框的条件减法

Pandas 数据框的条件减法

猛跑小猪 2021-10-05 16:03:49
我有如下所示的温度数据:Date        State  Temperature (F)2018-10-6   AL     152018-10-7   AL     452018-10-8   AL     672018-10-9   AL     252018-10-10  AL     552018-10-11  AL     77..我想给出一个条件语句,计算一个简单的减法,创建一个像这样的新列:if df[Temperature, i] < 65:     df[Calculation, i] = 65 - df[Temperature, i]else:     df[Calculation, i] = 0所以输出将是:Date        State  Temperature (F)   Calculation2018-10-6   AL     15                02018-10-7   AL     45                02018-10-8   AL     67                22018-10-9   AL     25                02018-10-10  AL     55                02018-10-11  AL     77                12..我不确定如何使用这种类型的循环简单地遍历列。是否有捷径可寻?
查看完整描述

1 回答

?
萧十郎

TA贡献1815条经验 获得超13个赞

国际大学联盟 clip_lower


df['Temperature(F)'].sub(65).clip_lower(0)

Out[377]: 

0     0

1     0

2     2

3     0

4     0

5    12

Name: Temperature(F), dtype: int64

2021 年 5 月 14 日更新:


而不是 clip_lower(0) 熊猫文档 0.25.3 https://pandas.pydata.org/pandas-docs/version/0.25.3/reference/api/pandas.DataFrame.clip_lower.html指出:


0.24.0 版后已弃用:改用 clip(lower=threshold)。


所以答案是:


df['Temperature (F)'].sub(65).clip(lower = 0)

Out[6]:

0     0

1     0

2     2

3     0

4     0

5    12

Name: Temperature (F), dtype: int64



查看完整回答
反对 回复 2021-10-05
  • 1 回答
  • 0 关注
  • 216 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信