2016-11-09 26 views
0

我在行爲空間中爲我的NetLogo模型創建了一個實驗。我想爲每隻烏龜保存一些變量的值,之後用統計軟件(Stata或R)處理。我對記者的第一次嘗試是:從NetLogo行爲空間導出橫截面數據

[my-variable] of turtles 

這類作品,但生成CSV文件的格式是有問題的。對於單個變量的所有值都存儲在一個空格分隔的列表:

"run", "[my-variable] of turtles" 
"1", "[48.234967724191584, 15.361986575058953, 19.613022950636537, ... ]" 
... 

我想什麼:

"run", "[my-variable] of turtle_0", "[my-variable] of turtle_1", ... 
"1", "48.234967724191584", "15.361986575058953", ... ]" 
... 

我正在尋找像Python中split()方法。有什麼建議麼?謝謝。

更新:橫截面分析是基於這樣一個假設,即在同一模型運行期間,所有記者都以相同順序列出海龜自己的變量。所以,如果我有兩個記者:

[my-variable-1] of turtles => "[1 2]" 
[my-variable-2] of turtles => "[3 4]" 

我需要確保這兩個記者,就拿龜以相同的順序,使龜0有my-variable-1等於1my-variable-2等於3,而甲魚1具有my-variable-1等於2my-variable-2等於4。我在NetLogo文檔中找不到這個提及。任何人都可以確認嗎?

回答

0

我可以給你一個問題的後半部分的答案。 [my-variable-1] of turtles將以隨機順序爲您提供my-variable-1的值,因爲of以隨機順序獲取代理。 (這在http://ccl.northwestern.edu/netlogo/5.0/docs/dictionary.html#O記錄)。

如果您想通過who號碼進行固定訂購,那麼您可以使用sortmap

map [[my-variable-1] of ?] sort turtles

sort turtles創建龜的排序列表,然後該列表是考慮到'地圖」原始創建由龜誰數量排序值的列表。當然,你需要小心,沒有海龜死亡或在運行過程中創建。

至於將觀察結果寫入CSV文件,還有其他一些帖子特別關注。您可能還想查看統計信息的擴展名,以便通過允許您從CSV擴展輕鬆處理的列表列表中列出運行結束時的所有結果,幫助您查看是否有幫助。

Charles