将ASC文件读入R
我目前正试图将各种“ASC”文件中的信息提取到R中,以便对数据进行分析 问题是我不确定如何准确读取文件。我尝试使用标准的read.table函数,但所有数字都完全相同(-9999.00)。为了排除数据损坏的可能性,我读入了另一个ASC文件,得到了相同的结果。我唯一确定的是,它们之间的文件大小完全相同 我是否可以读取这些文件?我能看一下R包吗 我打了个结:将ASC文件读入R,r,import,raster,R,Import,Raster,我目前正试图将各种“ASC”文件中的信息提取到R中,以便对数据进行分析 问题是我不确定如何准确读取文件。我尝试使用标准的read.table函数,但所有数字都完全相同(-9999.00)。为了排除数据损坏的可能性,我读入了另一个ASC文件,得到了相同的结果。我唯一确定的是,它们之间的文件大小完全相同 我是否可以读取这些文件?我能看一下R包吗 我打了个结: x = read.table("Dropbox/MVZ/aet2009sep.asc") y = read.table("Dr
x = read.table("Dropbox/MVZ/aet2009sep.asc")
y = read.table("Dropbox/MVZ/aet2009oct.asc")
我的产出是
> head(x, n =20)
V1 V2
1 ncols 3486.0
2 nrows 4477.0
3 xllcorner -374495.8
4 yllcorner -616153.3
5 cellsize 270.0
6 NODATA_value -9999.0
7 -9999.00 -9999.0
8 -9999.00 -9999.0
9 -9999.00 -9999.0
10 -9999.00 -9999.0
11 -9999.00 -9999.0
12 -9999.00 -9999.0
13 -9999.00 -9999.0
14 -9999.00 -9999.0
15 -9999.00 -9999.0
16 -9999.00 -9999.0
17 -9999.00 -9999.0
18 -9999.00 -9999.0
19 -9999.00 -9999.0
20 -9999.00 -9999.0
head(y, n =20)
V1 V2
1 ncols 3486.0
2 nrows 4477.0
3 xllcorner -374495.8
4 yllcorner -616153.3
5 cellsize 270.0
6 NODATA_value -9999.0
7 -9999.00 -9999.0
8 -9999.00 -9999.0
9 -9999.00 -9999.0
10 -9999.00 -9999.0
11 -9999.00 -9999.0
12 -9999.00 -9999.0
13 -9999.00 -9999.0
14 -9999.00 -9999.0
15 -9999.00 -9999.0
16 -9999.00 -9999.0
17 -9999.00 -9999.0
18 -9999.00 -9999.0
19 -9999.00 -9999.0
20 -9999.00 -9999.0
更新:可以使用
光栅
功能直接从“光栅”软件包读取.asc文件(aka文件)。帮助说:
如果x是文件名,则会识别以下附加变量:
本地:符合逻辑。默认值为FALSE,包rgdal丢失时除外。如果为TRUE,则使用本机(光栅包)驱动程序而不是通过rgdal来读取和写入…、和Arc ASCII文件
编辑2[过时]: 另一种方法是使用
raster()
函数,正确安装包rgdal
library(rgdal)
r = raster("C:\\...\\Dropbox/MVZ/aet2009sep.asc")
plot(r)
编辑1[过时]:
包adehabitat
现在已弃用。当前,它在加载时提供警告:
使用它是危险的,因为错误将不再被纠正。
现在建议使用adehabitatMA、adehabitatLT、adehabitatHR和adehabitatHS包。原始答复[过时]: 使用R软件包中的
import.asc
功能(参见第92页):
软件包具有功能
read.asc
,该功能在R3.2.4下工作。但是,至少在我的例子中,使用带有所有默认值的read.table
。我使用命令x=read.csv
(“C:\…\Dropbox/MVZ//aet2009sep.asc”,sep=“;”)
我在使用手动导入和使用Laf软件包后发现了这一点,它的速度非常快。如果您没有提供软件包名称或代码,您不能指望我们知道发生了什么样的错误。您应该包括原始文件的内容。一、 例如,不知道.asc文件是什么或看起来像什么。@Stophface,更新的答案。谢谢你的反馈。
library(rgdal)
r = raster("C:\\...\\Dropbox/MVZ/aet2009sep.asc")
plot(r)
library(adehabitat)
asc = import.asc("C:\\...\\Dropbox/MVZ/aet2009sep.asc")
#plot asc object.
library(raster)
r = raster(asc)
plot(r)