将R中的列表字段转换为数据库中的文本字段
我试图将在R中定义为元素列表的行空间对象导出到DB中的长文本/自由文本字段。将R中的列表字段转换为数据库中的文本字段
列表中的每个元素都包含变量no。点。例如:
short[[1]]
可以有3点:
0.11 40.63
0.15 40.78
0.17 40.01
short[[2]]
可以有7个点 short[[3]]
可以具有5个点 .......
注:每对值是地理坐标。
因此,列表中的每个元素都将转到数据库中的自由文本字段。
我该怎么办?我想我的问题是关于将列表转换为某种文本字段或甚至更好的转换为可以直接在数据库中作为几何体读取的json格式。
我更喜欢使用基本包,但如果有一种方法将整个列表转换为像结构这样的文本,并且需要外部包,那很好。
欢迎任何建议。在此先感谢,p。
只要打开列表项与2列的矩阵,然后一个数据帧:
processed = rbindlist(lapply(short, function(x)(data.frame(matrix(x, length(x)/2)))))
注意rbindlist从data.table包:
,然后重命名列适当
names(processed) = c("Longitude","Latitude"))
对不起有点陌生的方法。 x会是列表对象吗?每组点是矩阵中的一行还是多个矩阵? Thnx – user3310782
所以你会得到一个dataframes列表,其中每个dataframe是一组点。然后你有rbindlist把它们变成一个数据框。 – SolomonRoberts
我不完全清楚你想要提取什么 - 但可能这有助于? https://gis.stackexchange.com/questions/180682/merge-a-list-of-spatial-polygon-objects-in-r –