如何要求turtles为NETLOGO中的csv.file导入值

如何要求turtles为NETLOGO中的csv.file导入值,csv,netlogo,Csv,Netlogo,我用这个程序创造了海龟 file-open "C:/Users/.../netlogo.csv" while [ not file-at-end? ] [ let data csv:from-row file-read-line create-turtles 1 [ set size 0.1 setxy random-pxcor random-pycor set codcatasto item 0 data set set yExp ite

我用这个程序创造了海龟

file-open "C:/Users/.../netlogo.csv"
  while [ not file-at-end? ] [
   let data csv:from-row file-read-line
   create-turtles 1 [
     set size 0.1
     setxy random-pxcor random-pycor
     set codcatasto item 0 data
     set set yExp item 1 data
         ]
 ]
现在我想让turtles在每一个滴答声中更改yExp,从另一个csv.file导入数据。我无法复制相同的过程,将“create turtles”替换为“ask turtles”,因为turtles的顺序是随机的,并且turtles“0”和我文件的第一行之间没有对应关系。 所以,我试过这个

enter code here 
文件打开文件打开“C:/Users/../netlogo2.csv”
而[不是文件结尾?][
让数据csv:从行文件读取行
每种海龟[问谁][
设置yExp项目2数据
]
]

但是它不起作用。海龟现在被分类了,但是对于每一个海龟,我都会得到文件最后一行的值


有人能帮我吗?

我有一个名为“数据”的文件夹,用于存储我的输入文件。例如,我有一个名为“initialvals.csv”的初始值文件,看起来像:

A,1
B,2
C,3
D,4
E,5
我有“vals1.csv”、“vals2.csv”和“vals3.csv”来存储我的
yExp
值,这些值分别包含1:5乘以10、100和1000的值

因此,要以有序的方式导入它:

extensions [ csv ]

turtles-own [ codcatasto yExp ]

to setup
  ca 
  crt 5 [
    setxy random-pxcor random-pycor
  ]
  let input csv:from-file "data/initialvals.csv"
  ( foreach ( sort turtles ) input [
    [ t dpair ] ->
    ask t [
      set codcatasto first dpair
      set yExp last dpair
    ]
  ] )
  reset-ticks
end
现在,您可以执行大致相同的操作,但使用“VAL”csv文件。在本例中,我已将它们设置为与当前的
ticks
值绑定,以便访问的文件的每个tick都不同:

to go
  let newfile ( word "data/vals" ( ticks + 1 ) ".csv" )
  let newinput csv:from-file newfile
  ( foreach ( sort turtles ) newinput [
    [ t datum ] ->
    ask t [
      set yExp datum 
      show ( word codcatasto " " yExp )
    ]
  ] )
  tick
end
勾选0后:

(turtle 0): "A [10]"
(turtle 1): "B [20]"
(turtle 2): "C [30]"
(turtle 3): "D [40]"
(turtle 4): "E [50]"
勾选1后:

(turtle 0): "A [100]"
(turtle 1): "B [200]"
(turtle 2): "C [300]"
(turtle 3): "D [400]"
(turtle 4): "E [500]"
勾选2后:

(turtle 0): "A [1000]"
(turtle 1): "B [2000]"
(turtle 2): "C [3000]"
(turtle 3): "D [4000]"
(turtle 4): "E [5000]"

显然,如果你的刻度超过输入文件,这将停止工作。

谢谢你,卢克!这正是我要找的。