Netlogo 从列表中的项访问值

Netlogo 从列表中的项访问值,netlogo,Netlogo,我正在研究一个土地使用模型,其中每个刻度代表3个“现实生活”月。我想计算一整年的森林砍伐率,并将这些信息提供给某些代理。我定义森林砍伐是指去年森林面积的自然对数除以今年森林面积乘以100。目前,我按季度计算森林砍伐量,如下所示: to go set forest-extent-last-tick count patches with [land-cover = "forest"] ;agents carrying out all their actions, i

我正在研究一个土地使用模型,其中每个刻度代表3个“现实生活”月。我想计算一整年的森林砍伐率,并将这些信息提供给某些代理。我定义森林砍伐是指去年森林面积的自然对数除以今年森林面积乘以100。目前,我按季度计算森林砍伐量,如下所示:

to go
   set forest-extent-last-tick count patches with [land-cover = "forest"] 
   ;agents carrying out all their actions, including deforestation
   set forest-extent count patches with [land-cover = "forest"]
end 
然后我使用森林范围和森林范围最后一个勾号来计算该勾号的森林砍伐率。为了计算每年的森林砍伐率,我想我需要今年四只蜱的森林面积和上一年四只蜱的森林面积

我认为解决方案可能包括一个列表,我使用fput命令在其中输入每个勾号的最新森林范围。这样,清单中的项目0-3将代表本年度,项目4-7将代表上一年度我的问题是,有没有办法将这些项目从列表中拉到另一个命令/计算中?我的想法是这样的:

Set deforestation-rate ((sum deforestation-list item 4 item 5 item 6 item 7) / (sum deforestation-list item 0 item 1 item 2 item 3))

另外,如果有一种不同的方法来实现同样的结果,这对我来说也是完全可行的。

这是正确的想法<代码>项有不同的语法,但无论如何,我认为
子列表
就是您想要的

Set deforestation-rate ((sum sublist deforestation-list 4 8) / (sum sublist deforestation-list 0 4))

子列表
将列表、开始项(包括)和结束项(不包括)作为参数,因此
子列表mylist 4 8
将项目4、5、6和7放入一个列表中,然后可以求和。

这是正确的想法<代码>项有不同的语法,但无论如何,我认为
子列表
就是您想要的

Set deforestation-rate ((sum sublist deforestation-list 4 8) / (sum sublist deforestation-list 0 4))

子列表
将列表、开始项(包括)和结束项(不包括)作为参数,因此
子列表mylist 4 8
将项目4、5、6和7放入一个列表中,然后可以求和。

太棒了,谢谢,这正是我要找的!太棒了,谢谢,这正是我想要的!