【发布时间】:2014-11-18 15:32:17
【问题描述】:
我正在对鲑鱼种群动态进行建模,并且我有一个关于温度和流量的真实数据集。我想在每个刻度期间分配这两个参数的每日值,将第一个刻度设置为数据集中的第一天并使其继续读取文件。
我该怎么做?
雅各布
【问题讨论】:
-
文件中的数据是如何表示的? .csv?你能提供一个小样本数据吗?
我正在对鲑鱼种群动态进行建模,并且我有一个关于温度和流量的真实数据集。我想在每个刻度期间分配这两个参数的每日值,将第一个刻度设置为数据集中的第一天并使其继续读取文件。
我该怎么做?
雅各布
【问题讨论】:
NetLogo 具有相当广泛的文本文件 IO 功能(因此也适用于 CSV)。您显然将数据保存在一个简单的 CSV 文件中,因此您需要使用这些功能。简单的IO例子见https://subversion.american.edu/aisaac/notes/netlogo-intro.xhtml#file-based-io网上也有很多读取CSV文件的例子(比如http://netlogoabm.blogspot.com/2014/01/reading-from-csv-file.html)。不幸的是,NetLogo 不提供 CSV 阅读器。
您建议您要反复读取该文件。然后,您必须在整个模拟过程中保持文件打开。您可以从每个打开的文件中读取每个刻度线。
除非它是一个非常大的数据集,否则我宁愿一开始就将所有数据读入两个全局列表(例如,temparatures 和flows)。既然您说要更新每个刻度的值,请使用当前刻度值索引到这些列表中。例如,set temp item ticks temperatures。 (这里我假设您只使用tick 来推进滴答计数器,以便获得连续的整数。另外,如果您在开始读取数据之前使用tick,则需要使用ticks - 1。)
第
【讨论】: