我用随机浮动颜色语句创建代理
ask turtles [set color random-float 100 ]
我得到的颜色编号如213.45和23.67。这可以。然而,我的问题是如何计算特定类别颜色的频率(例如:213.45:5倍)和颜色总数。我需要一名记者。我知道如何列出颜色:
to-report color-turtles
report [color] of turtles
end
但我不知道如何算他们。
编辑:。而不是,答案 0 :(得分:2)
首先,在做科学时,始终将该点用作小数分隔符。
其次,您需要说出“特定类别”的含义。如果你真的是指特定的(在你的例子中,213.45),那么答案是每个类别出现一次。 (或者随机浮动有问题。)所以你真正需要做的是对你的数据进行直方图,你可以在哪里指定垃圾箱。不幸的是,NetLogo没有构建此功能。见https://github.com/NetLogo/NetLogo/issues/367
我将如何做到这一点。构建一个报告程序,将每种颜色放在一个类别中并报告该类别。 (简单方法是舍入为整数。)每次遇到类别时,使用表扩展将计数增加1.
修改强>
如果您已经知道颜色,可以使用
计算任何颜色to-report countColor [#color]
report count (turtles with [color = #color])
end
例如,
to-report color-count
let _colors remove-duplicates ([color] of turtles)
let _cts map [countColor ?] _colors
report (map list _colors _cts)
end