【发布时间】:2019-06-27 00:26:31
【问题描述】:
我正在尝试使用 NOAA 数据查找一系列日期之间的历史平均温度,并与长期平均温度进行比较。
我正在使用rnoaa 包,但遇到了一些问题。对于长期平均值,我成功地使用了以下语法:
library('rnoaa')
start_date = "2010-01-15"
end_date = "2010-11-14"
station_id = "USW00093738"
weather_data <- ncdc(datasetid='NORMAL_DLY', stationid=paste0('GHCND:',station_id),
datatypeid='dly-tavg-normal',
startdate = start_date, enddate = end_date,limit=365)
这让我可以解析weather_data$data 以获取该站点在 1 月 15 日至 11 月 14 日期间的长期平均温度。
但是,我似乎无法为历史平均温度找到正确的数据集或数据类型。除了那些日子的实际日平均温度外,我想获得与上面的代码相同的数据。知道如何查询吗?我已经做了几个小时了,但没有运气。
我尝试了以下方法:
weather_data <- ncdc(datasetid='GHCND', stationid=paste0('GHCND:',station_id),
startdate = start_date, enddate = end_date,limit=365)
uniq_d_types = unique(weather_data$data$datatype)
View(uniq_d_types)
这让我看到了 GHCND 数据集中的独特数据类型,但这些数据类型似乎都不是日平均温度。有什么想法吗?
【问题讨论】:
-
“实际平均温度”是什么意思?这与过去 30 年计算的历史平均值有何不同?
-
感谢@LenGreski 的回复。我的意思是那一天的平均每日温度。因此,假设最高温度为 80 F,最低温度为 50 F,但如果您要获得全天的平均值,则接近 65 F 左右。如果我看到那天 30 年的平均温度是华氏 50 度,我就会知道天气异常温暖。
-
您要的是根据 24 小时温度读数计算得出的平均值、给定日期的最高温度和最低温度之间的差异,还是其他一些公式?
-
@LenGreski 再次感谢。正确,根据 24 小时温度读数计算的平均值可以完美运行。
-
您需要访问每小时数据并自行汇总,因为每日平均温度不会保存到每日数据集中。有关如何从 NOAA 数据中获取每小时温度平均值的示例,请参阅下面的答案。