You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用R计算15分钟间隔气象数据的日最高、最低及平均温度?

在R中从15分钟气象数据计算日度温度指标

你的数据已经将时间戳转换为日期格式(as.Date(df$date)),接下来可以通过分组聚合快速计算日最低、最高和平均温度,以下是两种常用实现方法:

方法一:基础R(Base R)

使用aggregate()函数按日期分组,对温度列同时应用多个统计函数:

# 计算日度温度指标
daily_temp <- aggregate(temperature ~ date, data = df, 
                        FUN = function(x) c(
                          min_temp = min(x),
                          max_temp = max(x),
                          avg_temp = mean(x)
                        ))

# 将嵌套结果展开为常规数据框(可选,让列更易读)
daily_temp <- do.call(data.frame, daily_temp)

方法二:Tidyverse工具集(dplyr)

如果习惯使用tidy风格的代码,用dplyr的分组汇总逻辑更直观:

首先确保安装并加载依赖包:

# 首次使用时安装包
install.packages("dplyr")
# 加载包
library(dplyr)

然后执行分组计算:

daily_temp <- df %>%
  group_by(date) %>%
  summarize(
    min_temp = min(temperature, na.rm = TRUE),  # na.rm=TRUE处理可能的缺失值
    max_temp = max(temperature, na.rm = TRUE),
    avg_temp = mean(temperature, na.rm = TRUE)
  ) %>%
  ungroup()  # 取消分组(可选)

补充说明

  • 两种方法最终都会生成按日期分组的结果,包含date(日期)、min_temp(日最低温)、max_temp(日最高温)、avg_temp(日平均温)四列。
  • 如果原始数据存在缺失温度值,建议在统计函数中添加na.rm = TRUE,避免结果出现NA。

内容的提问来源于stack exchange,提问作者Ahsk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 08:02:02