我對NetLogo非常陌生,並試圖導入帶有狀態座標的CSV。我用這裏給出的代碼,它工作正常。唯一的問題是我必須關閉Netlogo並運行我的代碼才能獲得我的輸出。如果我再次運行它,它不起作用,除非我關閉軟件!NetLogo在每次運行之前都無法加載CSV
我調試了我的代碼,並意識到它不會爲多次運行輸入while [not file-at-end?]
循環。這是奇怪的行爲。我初始化了所有的列表和變量,並重置了所有的列表和變量。任何幫助表示讚賞。
我的代碼:
to load-physician-file
file-open "Physician-File.csv"
while [not file-at-end?]
[
set csv file-read-line
set csv word csv ","
set fileList[]
while [not empty? csv]
[
let $x position "," csv
let $item substring csv 0 $x
carefully [set $item read-from-string $item] []
set fileList lput $item fileList
set csv substring csv ($x + 1) length csv
]
set State-abbrev item 0 fileList
if label-states
[
create-state-labels 1
[
set xcor (item 2 filelist - 1.6)
set ycor (item 1 fileList - 1.6)
set size 0
set label item 0 fileList
]
]
]
file-close
end
你說'這裏給出的代碼',但實際上並沒有提供代碼 – JenB
'這裏給出的代碼',我的意思是stackoverflow。有一個流行的代碼,我發現。我編輯了問題以包含代碼。 –
stackoverflow非常龐大,可能有多個代碼在NetLogo中打開文件。好的做法是展示代碼(如你現在所做的那樣),並鏈接到你找到它的問題。這樣,你的問題和原始鏈接就可以聯繫起來,以便其他人可以在兩個問題上找到討論。 – JenB