问题标签 [terra]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
33 浏览

r - 具有自定义功能的聚合栅格失败

我正在使用包中的一个非常基本的聚合aggregate操作terra。主要思想是使用以下函数计算具有值的像素占整数的百分比:

不幸的是,aggregate在不同的条件下失败 - 甚至更简单 - 我无法弄清楚我做错了什么。

第一次尝试:aggregate(chm, fact=20, fun=length, na.rm=T) # w/o na.rm=T

第二次尝试:

应用上述根据本回复修改的最终函数的结果相同,如下:

terra 1.4.22在 W10 中和1.5.12在 W10 上进行的所有测试。

0 投票
2 回答
42 浏览

r - `terra` 中的 `sp::over()` 等价物

是否有等效的sp::over()in package terra?要获取显示 SpatVector 的哪些几何图形覆盖另一个 SpatVector 的哪些几何图形的数据框 - 像这样,但仅使用terra

在此处输入图像描述

0 投票
2 回答
84 浏览

r - 如何使用`terra`通过R中的条件语句对栅格进行子集化?

我试图从我正在使用的分类土地覆盖栅格中仅绘制某些值。我已经使用包将它加载到 R 中,terra并且绘制得很好。但是,由于原始数据没有附带图例,我试图找出哪个栅格值对应于地图上的值。

类似于此处提供的答案:How to subset a raster based on grid cell values

我尝试使用以下行:

但是,这条线需要很长时间才能运行并产生向量内存错误。该对象在全局环境中为 1.3 kb,原始 tif 约为 300 mb。

0 投票
1 回答
47 浏览

r - 将 SpatRaster 对象转换为 SpatialGridDataFrame

如何将SpatRaster对象(从terra包中)转换为SpatialGridDataFrame对象?

0 投票
1 回答
66 浏览

r - 多边形面积小于在 R 中使用 terra 的多边形

我有一组保存为 SpatVector 的多边形,我正在尝试使用 terra 包计算多边形的面积。问题是区域的数量少于多边形。这种行为是不可预测的,并且随机发生在远程机器上!

发生错误的地方:

以下是机器信息:

我知道我可以sf单独在多边形上使用包或循环,但是,我有数百万个多边形,而且terra似乎只是在资源和计算时间方面有效。也许问题来自terra::values()?有没有办法expanse()使用多边形 ID 来检查问题出在哪里?

编辑:产生问题的shapefile之一是here

0 投票
0 回答
38 浏览

javascript - 将 JavaScript 翻译成 R:二级标记产品

我正在尝试将以下 JavaScript 翻译成 R 但遇到问题:

这是绿色城市索引,它是可与 Sentinel-Hub 服务一起使用的自定义脚本存储库的一部分。

具体来说,我遇到了以下问题:

我认为var pixel = [Y, Y, Y];是一样的pixel <- c(Y, Y, Y)?这意味着在if声明中我会:

但我收到一个错误:

错误if (ndvi >= veg_th) {:参数不能解释为逻辑

对于那些不熟悉哨兵的人,关于我确实理解的部分的一些注释:

  • B04并且B08是来自 Sentinel 的栅格波段,所以
  • ndvi也是一个栅格(归一化差异植被指数)
  • veg_th是一个值,设置为解释结果的阈值ndvi
  • R, G, 并且B正在从哨点栅格进行彩色合成
0 投票
1 回答
39 浏览

r - 使用 terra::extract 结果存在问题 nan 值

我想从栅格中提取值到点。我正在使用 terra 和 extract() 函数。该脚本有效,但我注意到对于某些行(大约 100 行),提取函数的结果是值“nan”。没有点在栅格之外。我也有这个问题,添加了 na.rm=T 选项。如果我尝试使用示例 qgis 执行相同的操作,我没有这个问题。这怎么可能?有没有人遇到过这个问题?

0 投票
1 回答
33 浏览

r - 可以使用 terra::extract 使用不同的函数来提取栅格的不同类型的图层吗?

我的目标是从一组多边形位置的栅格中提取数据。栅格有许多数值变量和一些分类变量。我想提取以此为条件的值,ei,如果变量是数字,则为每个多边形获取 ,如果变量是分类的,则获取.meanmode

现在我正在这样做(看到“数字”层是数字,“分类”有代表类别的数字):

是否可以根据图层类型将值全部提取出来?即使我希望不同fun的数字层在提取时有所不同。可以做到吗?

谢谢!

0 投票
3 回答
960 浏览

r - R包“raster”在搜索“terra”最新版本时无法上传

我在 RStudio 2021.09.2 中使用 R 4.1.2 在 Windows 10 中工作。我正在处理空间数据,包括矢量和栅格,但是三天前命令库(栅格)开始给我这个警告:

错误:loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) 中的“raster”的包或命名空间加载失败:命名空间“terra”1.4-22 已加载,但 >=需要 1.5.12

  • 我尝试更新 terra,更新成功完成,但版本仍然是 1.4-22。
  • 我还尝试删除软件包(terra、raster、sf),然后再次安装所有内容,但错误仍然存​​在。
  • 最后,我尝试了以下方法:

但最终版本是相同的,1.4-22。我又试了一次:

不幸的是,一切都没有改变。有人在尝试类似的东西吗?在您看来,我该如何解决这个错误?有很多基于 terra 的软件包,我被卡住了,因为如果没有这个更新,它们似乎都无法工作。谢谢您的帮助!

0 投票
0 回答
79 浏览

r - lidR 中 raster 和 terra 包的问题

在 R 中安装 lidR 包后,在加载它时,加载所需的 raster 和 terra 包时出现错误。我已经尝试重新安装 raster 包并更新 terra 包,但我仍然得到同样的错误。因此,R 不会识别 lidR 包中的任何函数。

使用 lidR 包不是问题,而是使用 raster 和 terra。

提前谢谢了!