Netlogo 是否可以导入不同的文件?

Netlogo 是否可以导入不同的文件?,netlogo,Netlogo,首先,我很抱歉,如果这是一个愚蠢的问题,因为我是Netlogo的新手 我已经完成了Steven Railsback和Volker Grimm书中的蝴蝶模型,在这个例子中,有一个导入文件的练习,该文件具有坐标X Y和一个变量,该变量是高程。到目前为止,好的。但我目前正在尝试实现一个模型,其中我们有4个不同的文件,每个文件包含相同的坐标但不同的变量,我的问题是:是否可以导入这4个文件并在我们的“环境”中有4个不同的变量?只是为了确保-您正在使用找到的“ElevationData.txt”文件,对吗?

首先,我很抱歉,如果这是一个愚蠢的问题,因为我是Netlogo的新手


我已经完成了Steven Railsback和Volker Grimm书中的蝴蝶模型,在这个例子中,有一个导入文件的练习,该文件具有坐标X Y和一个变量,该变量是高程。到目前为止,好的。但我目前正在尝试实现一个模型,其中我们有4个不同的文件,每个文件包含相同的坐标但不同的变量,我的问题是:是否可以导入这4个文件并在我们的“环境”中有4个不同的变量?

只是为了确保-您正在使用找到的“ElevationData.txt”文件,对吗?因此,您的文件读取代码应该与本书中所示的大致相同:

因此,如果要导入的其他文件与“ElevationData.txt”文件基本相同,但第三列中的值不同,则完全可以相应地修改该代码块。如果我们以植被覆盖率为例,您需要一个
斑块自身的
变量,以及已经存在的
高程
变量:

补丁拥有[立面植被覆盖]

现在,假设您有一个类似以下内容的“植被数据.txt”文件:

0 0 0.86
1 0 0.15
2 0 0.42
3 0 0.44
4 0 0.43
5 0 0.33
...
运行高程导入后,可以执行完全相同的操作,但要使用植被:

  file-open "VegetationData.txt"                          
  while [not file-at-end?] [
    let next-X file-read                                 
    let next-Y file-read
    let next-veg-cover file-read                         
    ask patch next-X next-Y [set veg-cover next-veg-cover]
  ]
  file-close
现在,您的面片将为其
高程
植被覆盖
变量分配一个值

也就是说,如果可能的话,最好将您的输入文件合并并一起加载。如果您的高程和植被文本文件组合如下:

0 0 532.4 0.86
1 0 529.3 0.15
2 0 526 0.42
3 0 520 0.44
4 0 519.5 0.43
5 0 519.3 0.33
...
在组合数据集中(“ComboData.txt”),仍然有x和y列,但现在第三列是高程,第四列是植被覆盖。现在,您可以通过稍微修改导入代码来同时加载所有内容:

  file-open "ComboData.txt"                          
  while [not file-at-end?] [
    let next-X file-read                                 
    let next-Y file-read
    let next-elev file-read
    let next-veg-cover file-read                         
    ask patch next-X next-Y [
      set elevation next-elev
      set veg-cover next-veg-cover
    ]
  ]
  file-close

我不再使用那些文件了,但是你给出的例子回答了我的问题。我想知道在同一个补丁中使用两个或多个不同的变量是否不会导致任何问题。显然不是。谢谢:)
  file-open "ComboData.txt"                          
  while [not file-at-end?] [
    let next-X file-read                                 
    let next-Y file-read
    let next-elev file-read
    let next-veg-cover file-read                         
    ask patch next-X next-Y [
      set elevation next-elev
      set veg-cover next-veg-cover
    ]
  ]
  file-close