首页 > 解决方案 > 从 NetCDF 中提取数据

问题描述

我已经从这里下载了 1 月份的海面温度https://oceancolor.gsfc.nasa.gov/l3/

并将其导入R。

我知道如何使用 extent(ymax, ymin, xmax,xmin) 进行裁剪,但我不知道如何仅针对一个站点 (53.9S, 174,1W) 或最接近该坐标的站点进行裁剪。有没有办法只为一个站点裁剪数据?

val <- extract(174.1,53.9) .local(x, y, ...) 中的错误:范围不重叠

SST_Jan <- brick("~https://oceandata.sci.gsfc.nasa.gov/cgi/getfile/A20021822018212.L3m_MC_SST_sst_9km.nc", stopIfNotEqualSpaced = FALSE, varname = "sst")

print(SST_Jan)

val<-extract(174.1, 53.9)

SST_Jan_station <- extract(SST_Jan, val)

我希望能够绘制 12 个月内该特定位置的 SST 变化

谢谢,

标签: extractrasterr-rasterncdf4

解决方案


extract函数不适用于数值向量。

您可以将坐标放在matrix-

pnt = matrix(c(174.1, 53.9), ncol = 2)
pnt
##       [,1] [,2]
## [1,] 174.1 53.9

然后extract将工作 -

extract(SST_Jan, pnt)
##      layer
## [1,]  8.24

推荐阅读