如何将python中产生的多重字符串转换为R对象?

2024-09-26 17:38:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用reticulate包在R代码中集成了一个python函数,python中的原始输出是multilestring。 Rstudio中的输出类别为:

> class(result)
[1] "centerline.geometry.Centerline"                   "shapely.geometry.multilinestring.MultiLineString"
[3] "shapely.geometry.base.BaseMultipartGeometry"      "shapely.geometry.base.BaseGeometry"              
[5] "python.builtin.object"

> typeof(result)
[1] "environment"

Rstudio中的输出:

> result
MULTILINESTRING ((188.84310143 -25.44115933212567, 189.0883871453183 -25.39224242194983),
(189.34310143 -25.40412148482432, 189.0883871453183 -25.39224242194983))

我是python新手,有没有办法用python或R传输输出,这样我就可以用它来制作Spatiallines或SF对象


Tags: 函数代码baseresult类别classgeometryshapely
1条回答
网友
1楼 · 发布于 2024-09-26 17:38:38
#output of python function in R 
> class(result)
[1] "centerline.geometry.Centerline"                   "shapely.geometry.multilinestring.MultiLineString"
[3] "shapely.geometry.base.BaseMultipartGeometry"      "shapely.geometry.base.BaseGeometry"              
[5] "python.builtin.object"

> typeof(result)
[1] "environment"

#Convert from Python to R object 
processed <- reticulate::py_to_r(result)

#change type from environment to character 
result_2<-type.convert(processed,as.is = TRUE)

#read WKT and construct SpatialLines
x<-readWKT(result_2)


> x
class       : SpatialLines 
features    : 1 
extent      : 187.6103, 191.6382, -25.8519, -24.55464  (xmin, xmax, ymin, ymax)
crs         : NA 

相关问题 更多 >

    热门问题