我有一个从 netcdf4 文件读取并裁剪的栅格。栅格看起来像这样:
> library(terra)
> ncr1
class : SpatRaster
dimensions : 341, 745, 3 (nrow, ncol, nlyr)
resolution : 1000, 1000 (x, y)
extent : 1369250, 2114250, -674500, -333500 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=lcc +lat_0=42.5 +lon_0=-100 +lat_1=25 +lat_2=60 +x_0=0 +y_0=0 +ellps=WGS84 +units=m +no_defs
source : memory
names : vp_1, vp_2, vp_3
min values : 174.03, 195.29, 393.66
max values : 516.43, 606.79, 1047.61
time : 2009-01-01 12:00:00 to 2009-01-03 12:00:00
> dput(ncr1@ptr$time)
c(1230811200, 1230897600, 1230984000)
作为我想做的处理的一部分,我想使用 time
属性(我不确定这是否是该组件的正确形容词)作为我的流程的矢量输入,例如如何 doy
is used在meteor::hourlyFromDailyRelH()
:hourlyFromDailyRelh(relh, tmin, tmax, doy, latitude)
。我不知道如何以编程方式调用该属性。看起来我可以使用 ncr@ptr$time
,但基于此question at least,这似乎是错误的方法。 。例如:
> library(lubridate)
> pdays <- yday(as_datetime(ncr1@ptr$time))
> pdays
[1] 1 2 3
有错吗?我的意思是它似乎有效,但是如果R
中有更合适的功能(或 terra
)以获得 @ptr$time
部分,我不知道那是什么。我试过terra::cats()
并使用 getSlots()
,但这些都是错误的。
最佳答案
我猜您正在寻找以下内容:
terra::time(ncr1)
关于r - 如何访问属性[例如R 中 terra 栅格的时间]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71021666/