Netlogo如果与我和其他人声明

Netlogo如果与我和其他人声明,netlogo,Netlogo,我对Netlogo还不太熟悉,正在为如何设置一个有点复杂的if语句而苦苦挣扎。声明是针对海龟的,条件是其他海龟生活在同一地区,并且有房子 我尝试了以下迭代,但尚未成功: if (one-of other turtles with [region = [region] of myself and house? = True]) [] if (other turtles with [region = [region] of myself and house? = True]) [] 谢谢你的见解

我对Netlogo还不太熟悉,正在为如何设置一个有点复杂的if语句而苦苦挣扎。声明是针对海龟的,条件是其他海龟生活在同一地区,并且有房子

我尝试了以下迭代,但尚未成功:

if (one-of other turtles with [region = [region] of myself and house? = True]) []

if (other turtles with [region = [region] of myself and house? = True]) []

谢谢你的见解

如果需要在问题中插入代码,请查看工具栏中的“代码示例”按钮。您可以突出显示代码并单击按钮-超级方便

你的第二次尝试非常接近。快速修复方法是添加
any?
原语,以便告诉Netlogo您希望在本例中评估代理集“其他海龟”。实际上,你并没有用
if
来评估任何东西,就像说“如果我所在地区的海龟有房子”,而不是“如果我所在地区的海龟有房子。”

如果需要评估更具体的数字,可以使用类似于
count
的方法设置阈值,例如:

to check-region-count
  ask one-of turtles [
    if count other turtles with [ region = [region] of myself and house? = true ] > 3 [
      set color white
    ]
  ]
end

如果需要在问题中插入代码,请查看工具栏中的“代码示例”按钮。您可以突出显示代码并单击按钮-超级方便

你的第二次尝试非常接近。快速修复方法是添加
any?
原语,以便告诉Netlogo您希望在本例中评估代理集“其他海龟”。实际上,你并没有用
if
来评估任何东西,就像说“如果我所在地区的海龟有房子”,而不是“如果我所在地区的海龟有房子。”

如果需要评估更具体的数字,可以使用类似于
count
的方法设置阈值,例如:

to check-region-count
  ask one-of turtles [
    if count other turtles with [ region = [region] of myself and house? = true ] > 3 [
      set color white
    ]
  ]
end