【发布时间】:2015-04-12 03:13:04
【问题描述】:
我是《Applied Spatial Data Analysis with R》一书的中文读者,这本书对空间分析工作非常有用。我尝试使用 Rpy2 将 R 代码翻译成 python,因为 python 可以处理更复杂的数据源。但我对 Rpy2 代码有疑问。 NY8 数据随电子邮件附上。 R代码是:
library(rgdal)
NY8<-readOGR(".","NY8_utm18")
Syracuse<-NY8[NY8$AREANAME=="Syracuse city",]
Sy2_nb<-poly2nb(Syracuse,queen=FALSE)
library(spdep)
Sy2_nb<-poly2nb(Syracuse,queen=FALSE)
Sy2_lw<-nb2listw(Sy2_nb)
moran.plot(NY$POP8,Sy2_lw)
我用Rpy2翻译的时候,代码是:
>>> from rpy2.robjects.packages import importr
>>> utils = importr('utils')
>>> utils.install_packages('rgdal')
>>> rgdal=importr('rgdal')
>>> import os
>>> os.chdir("C:\\PYDATA\\NY")
>>> NY8=rgdal.readOGR(".","NY8_utm18")
>>> print(robjects.r['summary'](NY8))
当我想翻译代码“Syracuse
>>>Syracuse=NY8[NY8$AREANAME=="Syracuse city",]
显示错误信息:SyntaxError: invalid syntax 看来我无法通过“$”提取“AREANAME”,因为“$”在python中是非法的。
【问题讨论】:
标签: python geospatial rpy2