2016-08-18 23 views

回答

1

沒有什麼能讓你以直接的方式做到這一點。無論如何它並不會真的加快速度。

除非您的csv文件的大小確實是個問題,否則最簡單的事情就是過濾掉您使用的任何數據分析程序中的中止運行。

我能想到的唯一選擇是編寫自己的實驗代碼。假設你有一個stop-condition?記者,你set aborted? true當運行被中止,你可以做線沿線的東西:

extensions [ csv ] 
globals [ aborted? ] 

to experiment 
    let run-number 1 
    let file-name "experiment.csv" 
    if file-exists? file-name [ file-delete file-name ] 
    file-open file-name 
    foreach [ 1 2 3 ] [ ; vary x 
    set x ? 
    foreach [ "a" "b" "c" ] [ ; vary y 
     set y ? 
     set run-number run-number + 1 
     setup 
     while [ not stop-condition? ] [ go ] 
     if not aborted? [ 
     file-print csv:to-row (list 
      run-number 
      x 
      y 
      (count turtles) 
      ; whatever else you want to measure... 
     ) 
     ] 
     if run-number mod 10 = 0 [ file-flush ] 
    ] 
    ] 
    file-close-all 
end 

這假定xy分別是,滑塊和選擇器部件。如果你想改變全局變量,你必須小心,不要在安裝過程中調用clear-all來覆蓋它們。如你所見,所有這些都遠非理想,並且可能容易出錯。