为什么将 .csv 数据加载到 Netlogo 时会出现错误?

问题描述 投票:0回答:1

我有一个速度以公里/小时为单位的 .csv 文件,我已将其加载到模型中并且工作正常。但我需要将模型和文件中的信息更改为 m/s。当我打开 .csv 并插入更改而不更改任何其他内容(例如 10 km/h 更改为 2.77778 m/s)时,我收到错误:

找不到列表中的元素 1 [Downhill,"0 > 坡度 ≤ 2,5",2.77778,478.4,621.9,813.2,0,0],长度仅为1。错误 当观察者运行由(匿名命令:[ line -> 设置排放数据输入列表项 0 行项目 1 行项目 2 行项目 3 行项目 4 行项目 5 行项目 6 行项目 7 行排放数据 ]) 由过程 LOAD-EMISSIONS-DATA 调用 由过程 SETUP 调用
由“设置”按钮调用

我的代码的文件加载为:

   to load-emissions-data
  set emission-data []
  let file csv:from-file "emissions_table_ms.csv"
  foreach file 
  [
    line ->
    set emission-data lput (list (item 0 line) ;; movement-status
                                 (item 1 line) ;; slope
                                 (item 2 line) ;; speed
                                 (item 3 line) ;; ICE-new
                                 (item 4 line) ;; ICE-middle
                                 (item 5 line) ;; ICE-old
                                 (item 6 line) ;; hybrid
                                 (item 7 line)) ;; ev
                     emission-data
  ]
end

据我所知,我只是更改 .csv 文件中的目标值,以相同的格式保存它,没有其他任何内容。我需要帮助解决这个错误。

csv file netlogo
1个回答
0
投票

我猜测您的 .csv 文件在您编辑它以更改速度单位时已损坏。 Excel 特别擅长破坏 .csv 文件。例如,如果您在 Excel 中将文件另存为“CSV UTF-8”(而不是“CSV”),NetLogo 将无法读取该文件。如果您有欧洲计算机,Excel 可能会使用“;”保存您的文件。而不是字段之间的逗号。

尝试在纯文本编辑器(如 Notepad++)中打开 .csv 文件,确保它看起来正常或修复它,然后将其另存为纯文本文件。查找 .CSV 标准可能会有所帮助(例如,https://en.wikipedia.org/wiki/Comma-separated_values#Basic_rules

© www.soinside.com 2019 - 2024. All rights reserved.