2017-06-02 208 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

相關問題