观察者上下文中修补程序的NetLogo映射变量

观察者上下文中修补程序的NetLogo映射变量,netlogo,Netlogo,我试图按照生成补丁的列表的相同顺序映射补丁的变量(参见下面的代码)。然而,我得到了一个“当观测者运行settest2时出错”,因为它不能在观测者上下文中运行。我不理解这一点,因为这似乎是一个简单的过程 globals [test test2] patches-own [wealth] to setup ca ask patches [set wealth random 100] end to go set test [self] of patches show test se

我试图按照生成补丁的列表的相同顺序映射补丁的变量(参见下面的代码)。然而,我得到了一个“当观测者运行settest2时出错”,因为它不能在观测者上下文中运行。我不理解这一点,因为这似乎是一个简单的过程

globals [test test2]
patches-own [wealth]
to setup
  ca
ask patches
  [set wealth random 100]
end
to go
  set test [self] of patches
  show test
  set test2 map [wealth] test
  show test2
end

您可以将
set test2 map[wealth]test
更改为
set test2 map[x->[wealth]of x]test
。但是,当您使用代理列表而不是代理集时,您应该询问这是否真的有必要。

您可以将
set test2 map[wealth]test
更改为
set test2 map[x->[wealth]of x]test
。但是,当您使用代理列表而不是代理集时,您应该询问这是否真的有必要。

支持您应该使用代理集,除非您完全确定自己在做什么。支持您应该使用代理集,除非您完全确定自己在做什么。