使用范围时,stats 命令不会 return 期望值
stats command don't return expected value when using ranges
我在使用范围时使用 stats
命令有一些奇怪的行为。
考虑以下简单示例。
$Data<<EOD
1 10
2 20
3 30
4 40
5 50
6 60
7 70
8 80
9 90
10 100
EOD
stats [1:5] $Data u 1 nooutput
print STATS_records # Result: 10; Expected: 5
stats [1:5] $Data u 1:2 nooutput
print STATS_records # It works fine
为什么第一个 stats
命令没有 return 预期值?
这会影响所有 stats
结果。这是一个错误吗?我错过了什么吗?我正在使用 version 5.2 patchlevel 8
.
我试图解释这种行为:
如果你这样做
stats [1:5] $Data u 1:2 nooutput
列 1
对应于 x
,列 2
对应于 y
。
使用 [1:5]
,您将 x
限制为 1 到 5,因此有 5 条记录。
如果你这样做
stats [1:5] $Data u 1 nooutput
列 1
是 "kind of" y
,伪列 0
是 "kind of" x
,
但是,您限制了 x
而不是伪列 0
,因此有 10 条记录。
所以,如果你这样做
stats [1:5] $Data u 1:1 nooutput
您将在 1
列上获得预期的结果和预期的统计数据。
要查看所有 STATS
值,请键入 show var STATS
。
但我只是在猜测...我确定@Ethan 可以告诉。
我在使用范围时使用 stats
命令有一些奇怪的行为。
考虑以下简单示例。
$Data<<EOD
1 10
2 20
3 30
4 40
5 50
6 60
7 70
8 80
9 90
10 100
EOD
stats [1:5] $Data u 1 nooutput
print STATS_records # Result: 10; Expected: 5
stats [1:5] $Data u 1:2 nooutput
print STATS_records # It works fine
为什么第一个 stats
命令没有 return 预期值?
这会影响所有 stats
结果。这是一个错误吗?我错过了什么吗?我正在使用 version 5.2 patchlevel 8
.
我试图解释这种行为:
如果你这样做
stats [1:5] $Data u 1:2 nooutput
列 1
对应于 x
,列 2
对应于 y
。
使用 [1:5]
,您将 x
限制为 1 到 5,因此有 5 条记录。
如果你这样做
stats [1:5] $Data u 1 nooutput
列 1
是 "kind of" y
,伪列 0
是 "kind of" x
,
但是,您限制了 x
而不是伪列 0
,因此有 10 条记录。
所以,如果你这样做
stats [1:5] $Data u 1:1 nooutput
您将在 1
列上获得预期的结果和预期的统计数据。
要查看所有 STATS
值,请键入 show var STATS
。
但我只是在猜测...我确定@Ethan 可以告诉。