能否在一行代码中完成Pandas数据框列的单位转换与取整?
Pandas英尺转米并保留三位小数的简化写法
可以通过链式调用将两个操作合并为一行,关键是用括号确保先完成单位转换,再执行取整操作,避免提前取整的问题:
df['col_m'] = (df['col_f'] * 0.3048).round(3)
这个写法和你原来的两步操作逻辑完全一致,效率上几乎没有差别,但代码更简洁。Pandas的Series支持链式操作,括号保证了运算顺序——先计算所有英尺到米的转换值,再对整个结果Series执行round(3)保留三位小数,不会出现你之前遇到的提前取整问题。
内容的提问来源于stack exchange,提问作者Bojan Milinic
相关产品推荐
相关产品推荐

