基于现有相对湿度列条件创建湿度分类新列
基于相对湿度列创建湿度分类列
首先注意到你给出的分类规则存在逻辑重叠:"同时大于80和90"本质就是大于90,和第一条规则重复,推测你实际想要的合理规则应该是:
- 相对湿度 > 90 → 分类为
>90% - 80 < 相对湿度 ≤ 90 → 分类为
>80% - 相对湿度 ≤ 80 → 分类为
≤80%(补充该规则以覆盖所有场景)
以下是几种常用的实现方式(以Python pandas为例):
方法1:使用cut函数(适合连续数值分段)
import pandas as pd # 假设数据存储在DataFrame `df`中,相对湿度列名为'relative humidity' df['humidity_category'] = pd.cut( df['relative humidity'], bins=[-float('inf'), 80, 90, float('inf')], labels=['≤80%', '>80%', '>90%'] )
方法2:嵌套np.where(逻辑直观,适合简单条件)
import pandas as pd import numpy as np df['humidity_category'] = np.where( df['relative humidity'] > 90, '>90%', np.where( df['relative humidity'] > 80, '>80%', '≤80%' ) )
方法3:自定义函数+apply(便于扩展复杂逻辑)
import pandas as pd def get_humidity_category(rh_value): if rh_value > 90: return '>90%' elif rh_value > 80: return '>80%' else: return '≤80%' df['humidity_category'] = df['relative humidity'].apply(get_humidity_category)
内容的提问来源于stack exchange,提问作者Ahsk
相关产品推荐
相关产品推荐

