我正在 NetLogo 中构建表皮细胞的模拟。 我有两种类型的细胞,祖细胞和有丝 split 后细胞。祖细胞是可以 split 成祖细胞或有丝 split 后细胞。 每次运行都从 239 个祖细胞开始,每个祖细胞都有自己的身份(从 1 到 239),这是海龟自己的。每次祖先 split 时,都会将身份赋予后代。
我想计算一定数量的刻度后不同身份的数量。我用显示器和列表尝试过,但没有成功。
这是我编写的一小部分代码:
turtles-own [ identity]
globals [ id-count]
to setup
ask patches [sprout-postmitotic 1]
ask n-of (( 22 / 100) * count postmitotic) patches [
ask postmitotic-here [
hatch-progenitor 1
[
set identity id-count
set id-count id-count + 1 ]
die ]
]
end
to go
ask progenitor[
if random-float 1 < l [
hatch-postmitotic 1
]
end
最佳答案
如果您发布类似问题的代码,请尝试生成一个最小的示例来支持该问题。这里有两种方法。 (第一个说明了 table:counts
的使用,它可以访问更多信息。)
extensions [table]
turtles-own [identity]
to setup
ca
crt 1000 [set identity random 1000]
end
to-report id-count-01
let _idcts table:counts [identity] of turtles
let _unique table:keys _idcts
report length _unique
end
to-report id-count-02
let _unique remove-duplicates [identity] of turtles
report length _unique
end
关于global-variables - 计算 NetLogo 中变量的不同值的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44327850/