python - 如何在循环计算之后保存或覆盖数据框中的列值
问题描述
我的数据框中有 3 列,日期时间和降雪量。降雪数据需要从 kg m-3 s-1 转换为 mm/day。为此,我除以雪的密度并乘以一天中的秒数。(n/70)*86400
我想通过用绘图计算覆盖数据框中的降雪列来做到这一点。
我有一个循环函数,它转换值但不会将结果附加到列表中(这是我正在寻找的基本版本),但理想情况下,我希望它简单地覆盖数据框中的列以方便绘图。
def snowfallconverter(in1):
snowfall_fix = []
for ii in in1:
snowfall_mm = (ii/70)*8600
snowfall_fix.append(snowfall_mm)
数据集如下所示:
date time snowfall
01/11/2017 12:00:00 -4.43e-06
02/11/2017 12:00:00 -9.04e-08
先感谢您。
解决方案
此处不需要循环,仅按标量除和多列:
df['snowfall_mm'] = df['snowfall'] / 70 * 8600
print (df)
date time snowfall snowfall_mm
0 01/11/2017 12:00:00 -4.430000e-06 -0.000544
1 02/11/2017 12:00:00 -9.040000e-08 -0.000011
或覆盖同一列:
df['snowfall'] = df['snowfall'] / 70 * 8600
print (df)
date time snowfall
0 01/11/2017 12:00:00 -0.000544
1 02/11/2017 12:00:00 -0.000011
推荐阅读
- vue.js - Vue 3 - 货币输入过滤器
- python - 带有代码管道错误的 AWS CI CD - 附加日志
- php - jQuery ajax 将变量传递给 php 会话,但 php 会话不存储它
- ios - IOS 14 中未显示 JSQMessageViewController 的集合单元格中的媒体项
- c++ - 附加调试器给我凭据,删除它并且凭据为空
- sql - Oracle 从表中选择并加入日期最旧的位置
- delphi - 如何找出正在写入的记录的索引
- oracle - 在 pl/sql 中创建过程时出现错误
- c# - Unity2D:实例化的对象总是在错误的位置
- javascript - Javascript/React 未连接到 html