Netlogo:如何将 BehaviorSpace 的 spreadsheet.csv 文件中的 0 更改为空白?

Netlogo: How to change 0 to blank in BehaviorSpace's spreadsheet.csv file?

BehaviorSpace的spreadsheet.csv文件输出值的表示法中,如果输出结果为0表示法, 我想用空白符号替换它,但我不知道该怎么做(它没有发布在 netlogo 网站上)。 BehaviorSpace 的 spreadsheet.csv 文件输出值的平均值是自动生成的。 如果数据为 0,我不想计算均值。 目前,我正在通过手动擦除 spreadsheet.csv 文件中的 0 数据来重新发现均值。

我不确定您是否可以在 Netlogo 中完全按照您的意愿执行此操作,因为它并不真正处理 NULL、NA 或 NAN 值。可能有用的一件事是构建一个报告字符串值的报告器,然后您可以将其过滤掉。举个简单的例子:

to setup
  ca
  crt 10
  reset-ticks
end

to go
  ask turtles [
    rt random 60 - 30
    fd 1
  ]
  tick
end

to-report mean-y-or-nobody
  let val mean [ycor] of turtles 
  ifelse val > 0 [
    report val 
  ]
  [ report "#N/A"
  ]  
end

如果您为 运行 这个程序设置实验并报告 mean-y-or-nobody 报告者:

您的输出将是标准的 CSV 输出,但带有字符串“#N/A”值,而这些值通常为零。至少对我来说,Excel 会自动忽略这些值(图像中隐藏的一些行):

如果这对您不起作用,或者如果您使用的是不同的电子表格软件,至少现在您可以 find/replace 这些字符串值而不必担心替换其他零。当然,如果您使用的是 R 之类的东西,那么这一切都是不必要的,因为您可以将零值替换为真实的 NA 值。