我有一个多边形的形状文件,它是爱荷华州的乡镇。我想将每个元素(即每个乡镇)划分为9个相等的部分(即每个乡镇的3 x 3网格)。我已经想出了如何做到这一点,但是在使用新多边形构建新数据帧时遇到了麻烦。我的代码如下。数据可以在此处下载:https://ufile.io/wi6tt
Profil
最后一行给出以下错误:
library(sf)
library(tidyverse)
setwd("~/Desktop")
iowa<-st_read( dsn="Townships/iowa", layer="PLSS_Township_Boundaries", stringsAsFactors = F) # import data
## Make division
r<-NULL
for (row in 1:nrow(iowa)) {
r[[row]]<-st_make_grid(iowa[row,],n=c(3,3))
}
# Combine together
region<-NULL
for (row in 1:nrow(iowa)) {
region<-rbind(region,r[[row]])
}
region<-st_sfc(region,crs=4326) #convert to sfc
reg_id<-data.frame(reg_id=1:length(region)) #make ID for dataframe
# Make SF
region_df<-st_sf(reg_id,region)
1664是初始爱荷华州数据帧中的行数。 显然,行数与元素数量不匹配。
这可能是一般性的东西,而不是空间的东西,但我想我会发布整件事,万一有人知道如何做一整个这个更清洁的