关键词:R语言 经纬度 气候因子 worldclim
1.用R直接从全球生物多样性信息网络(GBIF)获取物种地理分布数据
见赖江山博文 http://blog.sciencenet.cn/blog-267448-1047946.html 需要注意,GBIF数据库物种鉴定信息不够准确,还需核实,或者找到更准确的地理信息来源(本文数据来源于目标物种的专业书籍)。
library(dismo)
Xishu= gbif("Abies", "firma")
head(Xishu)
XSgeo <- subset(Xishu, !is.na(lon) & !is.na(lat))
dim(XSgeo)
dups <- duplicated(XSgeo[, c('lon', 'lat')])#remove duplicated record
XSfin=XSgeo[!dups,]
dim(XSfin)
2.根据经纬度提取气候因子
(1)读入经纬度数据,并删除重复,删除存在NA值的行
geo=read.csv("geo,csv") #三列表格,依次为:taxon/lat/lon
na.omit(geo)
geoX=subset(geo,!is.na(lat) & !is.na(lon))#删含有NA的行,na.omit(geo)
dups=duplicated(geoX[,c('lon','lat')])
geoXX=geoX[!dups]#删除重复行
(2)安装包及下载worldclim数据
install.packages("raster")#注意R版本,R3.6会失败,R3.5可以
library(raster)
r <- getData("worldclim",var="bio",res=10) #var="bio" /"tmin" /等分别为19个气候因子或最低温 ,res=0.5 /5/10
res:resolutions,空间分辨率,经纬度1度约为111km(赤道附近),1度=60分=3600秒,1分=111/60=1.86km。res=0.5=30秒=~1km*1km,res=10分=18.6km*18.6km=344km2。