【发布时间】:2015-06-12 10:31:54
【问题描述】:
我有一个 gnuplot 代码,其中包含一个函数拟合例程。
当必须拟合大量数据点时,此例程很慢。我的输入文件中的数据点数量是可变的,具体取决于我正在运行的一些模拟的参数。
我希望只适合 100 分。到目前为止,我一直在通过手动计算输入文件中的条目数并除以 100 并将结果数用作拟合命令的“每 N”命令来做到这一点。
更多细节:
我使用的拟合命令是:
fit f(x) "output.csv" every N using 1:4:9 via a,b
其中 N = integer_round_down(output_file_length / 100.0) - 我在计算器上手动计算此值,然后在我的 gnuplot 脚本中手动替换 N 的值。 (好吧,除以 100,我是在脑海中计算的,而不是在计算器上。)
有什么方法可以获取任何列中的条目数,例如 col 1、col 4 或 col 9...然后在我的脚本中使用变量来计算 N,而不必每次都编辑我的脚本更改我的模拟参数?
【问题讨论】:
-
不确定如何在 csv 文件中的第 1 列与第 4 列有不同数量的条目?您可以使用
system("wc -l < output.csv")获取您的csv 中的行数吗? -
@MarkSetchell 抱歉,如果这含糊不清 - 他们都有相同数量的条目
标签: csv plot gnuplot function-fitting