r - 如何访问属性[例如R 中 terra 栅格的时间]?

标签 r attributes raster terra

我有一个从 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 usedmeteor::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/

相关文章:

使用 terra 和 raster 包读取 tif 文件给出不同的结果

r - 有没有办法在自己的函数中使用 mutate ?

r - R?中可用于Tufte箱图的功能

c++ - Rcpp - 定义采用 R 函数和省略号参数的 C++ 函数

python - Python 中的类继承

r - 用R将栅格转换为矩阵

r - 使用相对于另一个元素的动态位置/位置向 ggplot2 图中添加注释

php - 从产品 ID 获取特定属性的值

Python 'AttributeError: '函数'对象没有属性 'min''

python - 避免 3d 矩阵运算的嵌套 for 循环的一般选项