楼主: dongqing2008
2179 2

疑问 [推广有奖]

  • 0关注
  • 1粉丝

副教授

48%

还不是VIP/贵宾

-

威望
0
论坛币
19567 个
通用积分
1.5867
学术水平
85 点
热心指数
127 点
信用等级
65 点
经验
17094 点
帖子
683
精华
0
在线时间
385 小时
注册时间
2008-7-20
最后登录
2017-3-14

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

想问一下SPLUS和R可以做空间自相关分析吗?能的话是输入地图还是数据?

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:空间自相关分析 空间自相关 相关分析 PLUS 自相关 疑问

沙发
蕲庙的鬼 发表于 2009-5-4 17:43:00 |只看作者 |坛友微信交流群
都可以做的啊!输入数据就可以了啊!

使用道具

藤椅
DM小菜鸟 发表于 2015-2-28 15:09:25 |只看作者 |坛友微信交流群
R语言可以做的,用Moran's I
在R的ape包,有关于Moran's I的详细的说明。
  
##################
library(spdep)
## 为了检验ntaxa是否具有空间自相关
setwd("C:/one/")
test0 <- read.csv("test.csv", header = TRUE, row.names = 1)
ntaxa <- test0$ntaxa
## 将test数据集转换成Spatial格式
test <- test0[,c(1,2)]
sptest <- SpatialPoints(test, proj4string = CRS("+proj=longlat +datum=WGS84"))
## 计算每个点最近的几个neighbour(这里k = 1,表示只计算一个的)
nbk1 <- knn2nb(knearneigh(sptest, k = 5, longlat = TRUE))
## 将nbk1转换成 spatial weight linkage object 对象
snbk1 <- make.sym.nb(nbk1)
### n.comp.nb() finds the number of disjoint connected subgraphs
### in the graph depicted by nb.obj - a spatial neighbours list object.
### 查看每个点不相接的相邻点数量
n.comp.nb(snbk1)$nc
### 查看各点链接情况
plot(nb2listw(snbk1), cbind(test$longitude, test$latitude))
### Moran's Test检验该数据集是否存在显著的空间自相关
### Moran's I test under randomisation
moran.test(ntaxa, nb2listw(snbk1))
### Moran's I Correlograms
### par(mfrow = c(1, 3))
ntaxa.Moron.I <- sp.correlogram(snbk1, ntaxa, order=6, method="I", zero.policy = TRUE)
plot(ntaxa.Moron.I)
### SAR model
### Saddlepoint approximation for global Moran's I (Barndorff-Nielsen formula)
lm.morantest.sad(lm(ntaxa~1),nb2listw(snbk1))
## sacsarlm
COL.sacW.eig <- sacsarlm(ntaxa ~ Pre + Elev + factor(Time) + factor(Geology), data = test0, nb2listw(snbk1, style="W"))
summary(COL.sacW.eig, correlation=TRUE)




使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-30 19:57