问题标签 [r-modis]

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 投票
0 回答
44 浏览

r - 如何将值 1 更改为 NA

我有一个问题,如何更改红色 = 1 而不是云 = NA 的云的值变成云 = NA 而不是云 = 1

0 投票
0 回答
89 浏览

r - 使用 MODIStsp_extract() 从栅格中提取点

我正在尝试使用 MODIStsp 包下载 MODIS 数据并将其转换为可用格式(R 表)以进行统计分析。我下载了数据,并在我的 R 会话中加载了虚拟光栅文件:

现在我正在尝试在某些特定点提取数据。为此,我将一组点(纬度和经度)存储在具有 2 列的数据框中。我创建了一个 SpatialPoints 对象:

我想使用 MODIStsp_extract() 函数:

我收到以下错误消息:

如文档所示(https://www.rdocumentation.org/packages/sp/versions/1.3-1/topics/SpatialPoints),SpatialPoints对象没有“数据”字段,但 SpatialPointsDataFrame 有。但是,数据槽适用于平面表,每行都有一些数据,每行都是一个点。我没有得到的是,我显然没有每个点的数据:这就是我首先要从栅格中恢复的数据!所以很明显我做错了什么,但我看不出是什么。

如果有人知道我做错了什么,那将有很大帮助!

0 投票
2 回答
467 浏览

r - 多个嵌套 for 循环仅在 R 中的 i=j=k 索引下进行迭代

我一直在尝试计算满足 R 特定条件的三个光栅文件的像素数(在 Windows 10 和 R 版本 3.6.3 中)。这个想法是使用这三个图像(它们是预处理的)并计算满足if以下代码语句中的条件的像素数量。

可以观察到,我有三种类型的预处理光栅 ( ) 文件,它们以和*.tif开头crNDVI,所有这些文件都列在每个“ ”变量中。这个想法是迭代每种类型的文件并每天获取每个光栅文件的值。代码做了它应该做的(我得到了带有烧毁区域的文件(满足条件的像素),但是,它需要永远计算,因为每个光栅文件对应于特定的一天,因此结果是每天的值。因此,发生这种情况的唯一可能性是 when ,但应用后一个代码,迭代会遍历循环中的每个可能性。代码从 i=1 开始,然后 j=1,然后 k=1,2,3.. . 直到最后一个文件crNBRdNBRlistado.csvburned_areai=j=kforlistado3[k],并且当长度listado3[k]结束时,它传递到以下j+1索引并再次循环k到每个(不必要的)迭代中。

谁能帮助我以更有效的方式做同样的事情?是否有可能对i=j=k整个嵌套for循环强制“仅”?非常感谢您的任何建议。提前感谢,豪尔赫。

注意:所有栅格文件的范围相同nrowncolncell

0 投票
3 回答
1265 浏览

r - 在 R 中,如何从 MODIS 正弦投影重新投影到 latlong (ellps=WGS84) 投影

我设法从 HDF 文件中提取 MODIS 土地覆盖数据并将其放入栅格中。

我想把它放到一个数据框中,但是从原来的正弦曲线中重新投影+proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.181 +units=m +no_defs,我认为。

对于与我正在分析的其他数据集兼容的普通椭圆体/WGS84。

这是我尝试过并且似乎有效的方法:

但是,当我随后将我的土地覆盖数据放入这个新投影中的数据框时,所有土地覆盖值都变为 NA。

这就是数据框在正弦投影中的样子(4 是土地覆盖分类)

通过我的重新投影,它看起来像这样:

关于我做错了什么或如何让土地覆盖坐标正确重新投影的任何建议?

干杯!!!!

我还读到有一个 NASA MODIS 重投影工具,但它不再存在/可用。有人知道吗?

0 投票
1 回答
75 浏览

hdfs - MOD10A1 NDSI 积雪层中从 100 到 200 的值是什么意思?

我正在使用 MODIS 积雪产品 (MOD10A1) 并且无法理解返回的一些值。我正在尝试从 NDSI(归一化差异雪指数)积雪层中获取 % 积雪。MODIS 用户手册指出,NDSI 积雪层的值介于 0 到 100 之间,表示每个像素中的积雪百分比,以及 200 到 255 之间的八个值,表示所有其他可能的特征/遮罩(云、缺失数据等)。在处理图像时,我发现值介于 100 和 200 之间,并且在 MODIS 文档中找不到对这些值的任何引用。

我从 NSIDC.org 网站下载了 MOD10A1 产品为 .hd 文件。我在 R 中工作,但无法使用 R 中的 .hd 文件,因此我使用 MODIS NASA 网站上推荐的 HEG 转换器程序将 NDSI 积雪层转换为 .tif 文件。我使用 raster 包将 .tif 文件导入 RStudio,并使用 getValues 和 unique 函数来查找每个像素中的值。返回的值是 0 到 255 之间的任何值,包括 100-200 范围内的值。

有谁知道这些值是什么意思?是产品自带还是文件转换有错误?感谢您的帮助。

编辑:感谢您的建议。确切的文件名之一是“MOD10A1.A2015364.h25v06.006.2016182181418.hdf”和文件链接 https://drive.google.com/file/d/1HeEpIL15EC_PSBWsuGT4FJMZOPr4_oND/view?usp=sharing

我尝试使用 terra 包中的 rast 函数并得到相同的结果。

0 投票
1 回答
36 浏览

r - 可视化特定国家的 MODIS 植被层(使用 R-package MODISttsp)

我正在尝试下载和可视化肯尼亚(以及其他类似国家)的 NDVI 数据。

为此,我检索了肯尼亚使用的边界框,osmdata并在从MODIStsp

然后我只是将下载的数据可视化,但似乎没有裁剪出肯尼亚

任何关于如何裁剪单个国家的想法都值得赞赏

0 投票
2 回答
747 浏览

r - 在 R 中使用 MODISTools 函数时“找不到对象 'rlang_hash'”

我正在尝试按照文档中的步骤操作并使用MODISToolsR 包下载土地覆盖数据。

我将库安装MODISTools并导入到我的 R 会话中

然后,当我尝试运行任何mt_*()功能时,我收到以下错误。

encl$ _hash(c(encl$ _f_hash, args, lapply(encl$ _additional, : object 'rlang_hash' not found) 中的错误

0 投票
2 回答
229 浏览

r - 使用形状文件下载 R 中国家/地区的 MODIS 产品数据

有什么方法可以用来解析一个国家的 shapefile 并使用 R 在该国家/地区下载 MODIS 产品数据?

我尝试了使用MODIStsp包(https://docs.ropensci.org/MODIStsp/)以及MODISTools包( https://docs.ropensci.org/MODISTools/articles/modistools-vignette.html )的不同方法,它们都只允许我下载特定站点的 MODIS 产品数据,但不能下载国家/地区。

0 投票
1 回答
36 浏览

r - 使用带有 MODIStsp R 包的 shapefile

我正在尝试使用MODIStspR 包下载指定国家/地区的数据。为此,我从这里下载了蒙古的边界到我的工作目录中,并将它的路径传递到我的MODIStsp()函数中。但是,这似乎并没有在定义的边界内下载数据并继续下载初始示例

在此处输入图像描述

0 投票
1 回答
17 浏览

r-modis - runGdal 开始日期问题

运行以下代码行后,下载是从 2019001 而不是 2015001 开始的。如何解决这个问题?