我正在构建NetLogo中的表皮细胞模拟。 我有两种类型的细胞,祖细胞和有丝分裂后细胞。祖细胞是可分为祖细胞或有丝分裂后细胞的细胞。 每次运行都以239个祖细胞开始,每个细胞各有一个自己的身份(从1到239),这是一个海龟自己的身份。每次祖先分裂时,身份都会给予后代。
我想在一定数量的滴答后计算不同身份的数量。我用监视器和列表尝试了它,但它没有用。
以下是我所做代码的一小部分:
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
答案 0 :(得分:3)
如果您发布此类问题的代码,请尝试生成一个支持该问题的最小示例。这有两种方法。 (第一个说明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