2017-06-02 205 views
2

我在NetLogo中建立了一个表皮细胞的模拟。 我有两种类型的细胞,祖细胞和后有丝分裂细胞。祖细胞是可分为祖细胞或有丝分裂后的细胞。每个运行从239个祖细胞开始,每个祖细胞具有自己的身份(从1到239),这是一个海龟自己的身份。每次祖先分裂时,身份被赋予后代。在NetLogo中计数一个变量的不同值的个数

我想计算一定数量的滴答后不同身份的数量。我用显示器和列表尝试过,但没有奏效。

下面是代码的一小部分,我已经做:

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 

回答

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 
+0

谢谢,这是非常有帮助!这正是我需要的! – Mee

相关问题