r-问题在软件包spsurvey中运行grts()的更新版本



随着spsurvey的更新版本,我很难使用grps((函数为我的设计生成随机点。使用下面的代码,如果n_over=某个数字,我可以生成点,并且它在所有地层中绘制该数字。然而,我希望每个地层的过采样数量基于英亩数不同。代码的第一位工作并绘制适量的基点,然后每个地层产生10个过采样点

然而,当我尝试为n_over(over.test(做类似的事情时,我收到了这个错误消息

"输入错误消息n_base+n_over:对于每个地层,基本位置和"over"替换位置的总和不得大于"sframe"中代表该地层的行数">

即使在测试中每个地层有115+行-st_ read("UFO_2022_Ints_Pts_Strata.shp"(

不幸的是,关于更新后的spsurvey软件包的信息很少。

"ALLOT_ NAME";是形状文件中的一列,其中包含每个地层的名称(Adobe、Big Pasture等(

Stackoverflow的新手,所以如果我没有适当地展示这个,我很抱歉

### Working code ####
test.prj=c("UFO_2022_Ints_Pts_Strata")
test.inShape<-st_read("UFO_2022_Ints_Pts_Strata.shp")
plots.df<-read.csv("GUSG_Strata.csv")
strata.list<-as.vector(plots.df)
x<-c('Adobe' = 2, 'Big Pasture' = 2, 'Black Ridge' = 45, 'Blue Cimarron' = 2, Buck = 2, 'Crawford Reservoir' = 2, 'Dave Wood Road' = 2, 'Dry Cedar' = 2, 'East Gould Reservoir' = 2, 'Gould Reservoir' = 20, 'Green Mountain - Middle' = 35, 'Grizzly Gulch' = 2, 'Iron Canyon' = 15, 'Little Baldy' = 2, 'Lower Horsefly' = 35, 'Onion Valley' = 2, 'Poison Spring' = 15, 'Rawhide - Coffee Pot' = 2, 'Rim Rock' = 2, 'Shinn Park' = 2, 'Tappan Creek' = 2, 'Green Mountain - Jensen Ware' = 15, 'Green Mountain - West' = 35, 'Green Mountain - East' = 30)
#test.sample<-grts(design=test.design, DesignID="RGFO_2022_RangeLPI", in.shape=test.inShape, id = "RGFO_2022_RangeLPI", prjfilename=test.prj, out.shape="RGFO_2022_RangeLPI_GRTS")
test.sample<-grts(test.inShape, n_base=x, stratum_var="ALLOT_NAME", n_over=10, DesignID="UFO_2022_GUSG" )
test.output<-sp_rbind(test.sample)
st_write(test.output, "UFO_2022_GUSG_SampleDesign_V1_TESTErase.shp")

# will not work when I use n_over = Over.list  trying to specify oversample points for each strata

Over.list <- c('Adobe' = 3,
'Big Pasture' = 3,
'Black Ridge' = 10,
'Blue Cimarron' = 3,
'Buck' = 3,
'Crawford Reservoir' = 3,
'Dave Wood Road' = 3,
'Dry Cedar' = 3,
'East Gould Reservoir' = 3, 
'Gould Reservoir' = 3, 
'Green Mountain - Middle' = 10,
'Grizzly Gulch' = 3,
'Iron Canyon' = 10,
'Little Baldy' = 3,
'Lower Horsefly' = 10,
'Onion Valley' = 3, 
'Poison Spring' = 10,
'Rawhide - CoffeePot' = 3,
'Rim Rock' = 3,
'Shinn Park' = 3, 
'Tappan Creek' = 3, 
'Green Mountain - Jensen Ware' = 10,
'Green Mountain - West' = 10,
'Green Mountain - East' = 10)
### Below is the layout of the grts function
# grts
#   sframe,
#   n_base,
#   stratum_var = NULL,
#   seltype = NULL,
#   caty_var = NULL,
#   caty_n = NULL,
#   aux_var = NULL,
#   legacy_var = NULL,
#   legacy_sites = NULL,
#   legacy_stratum_var = NULL,
#   legacy_caty_var = NULL,
#   legacy_aux_var = NULL,
#   mindis = NULL,
#   maxtry = 10,
#   n_over = NULL,
#   n_near = NULL,
#   wgt_units = NULL,
#   pt_density = NULL,
#   DesignID = "Site",
#   SiteBegin = 1,
#   sep = "-",
#   projcrs_check = TRUE
# )

很抱歉这里的响应太晚!我认为您收到的错误是我们的一次错误检查中出现错误的结果。这个错误将在spsurvey的5.4.0版本中修复,该版本将在未来几周内在CRAN上发布。我希望一旦安装了新版本,你的代码就能正常工作。此外,spsurvey有一个新的网站,可以在这里查看,其中包含许多有关该包的信息。

至于";适当地呈现";在Stack Overflow上,通常您希望提供一个可复制的示例(在这里和这里详细介绍(。考虑到这个bug的性质,我认为提供一个可复制的例子是很有挑战性的。因此,我很感激您提供了所有的代码。

编辑:spsurvey5.4.0版本于2022年11月22日推送至CRAN。

最新更新