首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在Windows中使用` raster ::raster`和Rscript读取栅格文件

无法在Windows中使用` raster ::raster`和Rscript读取栅格文件
EN

Stack Overflow用户
提问于 2016-02-20 05:31:31
回答 1查看 494关注 0票数 2

我似乎在使用Rscript读取栅格和直接调用raster包时遇到了Windows特有的问题。我有最新版本的raster包(2.5-2)。在Windows2008 R2中运行R 3.2.1。

假设有以下情况:

代码语言:javascript
复制
library(raster)
j <- raster(matrix(rnorm(100), ncol=10, nrow=10))
writeRaster(j, 'j.tif')

如果我启动一个新的R会话(或不启动),这在R中工作:

代码语言:javascript
复制
library(raster)
j <- raster('j.tif')

这样做(同样,在新的会话中):

代码语言:javascript
复制
j <- raster::raster('j.tif')

如果我从命令行使用Rscript进行尝试,这是可行的:

代码语言:javascript
复制
C:\> Rscript -e "library(raster); raster('j.tif')

但这是行不通的:

代码语言:javascript
复制
C:\> Rscript -e "raster::raster('j.tif')"
Error in .rasterObjectFromFile(x, band = band, objecttype = "RasterLayer",  :
  Cannot create a RasterLayer object from this file.
Calls: <Anonymous> -> <Anonymous> -> .local -> .rasterObjectFromFile
Execution halted
EN

回答 1

Stack Overflow用户

发布于 2016-02-21 14:08:45

c:/中是否存在该文件?你能做到:

代码语言:javascript
复制
Rscript -e "file.exists('j.tif')"

我认为你关于Rscript没有加载方法包的说法是对的。但是raster依赖于它并加载它:

代码语言:javascript
复制
Rscript -e "library(raster); sessionInfo()"

#Loading required package: methods
#Loading required package: sp
#R Under development (unstable) (2016-01-09 r69890)
#Platform: x86_64-w64-mingw32/x64 (64-bit)
#Running under: Windows 7 x64 (build 7601) Service Pack 1

#attached base packages:
#[1] methods   stats     graphics  grDevices utils     datasets  base
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35515422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档