我有一个这样的数据帧(dat),到目前为止geom_transect是一个因素。 我想通过指定geom_transect是一个几何列将我的数据框转换为一个sf对象,但没有成功。 这是我的桌子
rn geom_transect
1 c(2.59301435154815, 51.0850974058788)
2 c(2.65908408179987, 51.120810848601)
3 c(3.33344625797791, 51.3620269560137)
4 c(4.36158333330571, 51.2919925240015)
5 c(4.11514955241717, 51.1308060725143)
我尝试过:
st_as_sf(as.numeric(as.character(dat$geom_transect)))
我收到以下错误消息:
Error in UseMethod("st_as_sf") :
no applicable method for 'st_as_sf' applied to an object of class "c('double', 'numeric')"
In addition: Warning message:
In st_as_sf(as.numeric(as.character(dat$geom_transect))) :
NAs introduced by coercion
我也尝试过:
st_point(is.numeric(dat$geom_transect))
Error in st_point(is.numeric(dat$geom_transect)) :
is.numeric(x) is not TRUE
欢迎任何帮助,在此先感谢!
答案 0 :(得分:0)
您确实使我走上了正轨,谢谢!我以为会有一种更简单的方法,并且我同意应该以其他方式存储几何表,但是数据提取很长,并且我不想重新运行该部分代码。
这是我最终检索lon / lat坐标的方法:
<goupId>com.example.example</groupId>
<artifactId>main</artifactId>
<version>0.0.4-SNAPSHOT</version>
<packaging>aar</packaging>
<dependencies>
<dependency>
<groupId>com.example.example</groupId>
<artifactId>submodule1</artifactId>
<version>0.0.4-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.example.example</groupId>
<artifactId>submodule2</artifactId>
<version>0.0.4-SNAPSHOT</version>
</dependency>