如何将Pandas列数值向上取整到最近的n单位值?以10米分类为例
Pandas按10米间隔生成距离分类列实现方案
你现有的20万行DataFrame可以用以下方法快速生成符合要求的分类列,核心逻辑已通过测试:
import numpy as np # 直接生成带单位的分类列 data['class (<= x meters)'] = (np.ceil(data['d2b(m)'] / 10) * 10).astype(int).astype(str) + 'm'
逻辑说明
- 采用
np.ceil向上取整规则,完全匹配需求:19米归入20m、29米归入30m、刚好为10的倍数的90米直接归入90m,和你给出的示例输出完全一致 - 基于numpy向量化运算,20万行数据处理无性能压力,不需要遍历每行数据
内容的提问来源于stack exchange,提问作者brygid
相关产品推荐
相关产品推荐

