BENFORD 命令
概念信息
统计一个域中各个前导数字 (1–9) 或前导数字组合的出现次数,并将实际计数与预期计数进行比较。使用 Benford 公式计算预期计数结果。
语法
BENFORD <ON> 数值域 <LEADING n> <IF 测试> <BOUNDS> <TO SCREEN|表名称|GRAPH|PRINT> <LOCAL> <HEADER 页眉文本> <FOOTER 页脚文本> <WHILE 测试> <{FIRST 范围 |NEXT 范围> <APPEND> <OPEN>
参数
名称 | 描述 |
---|---|
ON 数值域 |
要分析的数值域。 |
LEADING n 可选 |
要分析的前导数字的数目。n 的值必须为 1 到 6。 如果 LEADING 被省略,则使用默认值 1。 |
IF 测试 可选 |
一个条件表达式,它必须为真以便处理每个记录。仅对满足条件的那些记录执行该命令。 说明 在应用任何范围参数(WHILE、FIRST、NEXT)之后,仅针对表中的剩余记录评估 IF 条件。 |
BOUNDS 可选 |
在输出结果中包括计算上限值和下限值。 如果输出结果中的两个或更多个计数超过任一限值,则该数据可能已被操纵,应该进行调查。 |
TO SCREEN | 表名 | GRAPH | PRINT 可选 |
要将命令结果发送到的位置:
|
LOCAL 可选 |
请将输出文件保存在与 Analytics 项目相同的位置。 说明 仅当针对服务器表运行该命令并且输出文件为 Analytics 表时适用。 LOCAL 参数必须紧跟在 TO 参数后面。 |
HEADER 页眉文本 可选 |
要在报告的每个页面的顶部插入的文本。 必须将头文本指定为带引号的字符串。该值将覆盖 Analytics HEADER 系统变量。 |
FOOTER 页脚文本 可选 |
要在报告的每个页面底部插入的文本。 必须将尾文本指定为带引号的字符串。该值将覆盖 Analytics FOOTER 系统变量。 |
WHILE 测试 可选 |
一个条件表达式,它必须为真以便处理每个记录。该命令被一直执行到条件的计算结果为假或者到达表的末尾为止。 说明 如果您将 WHILE 与 FIRST 或 NEXT 结合使用,请在达到一个限制时立即记下处理步骤。 |
FIRST 范围 | NEXT 范围 可选 |
要处理的记录数:
请使用范围指定要处理的记录数。 如果您省略 FIRST 和 NEXT,则会默认处理所有记录。 |
APPEND 可选 |
将命令输出附加到现有文件的末尾,而不是覆盖现有文件。 说明 您必须确保命令输出的结构和现有文件完全相同:
Analytics 将输出附加到现有文件,而无论其结构如何。如果输出的结构和现有文件不匹配,则可能生成混乱的、不完整的或不准确的数据。 |
OPEN 可选 |
在命令执行后打开该命令创建的表。仅当该命令创建输出表时有效。 |
示例
将结果输出到图表
您针对金额域运行 BENFORD 命令,并且将结果输出到图表:
BENFORD ON 金额 LEADING 2 BOUNDS TO GRAPH
备注
有关此命令工作方式的详细信息,请参阅执行 Benford 分析。
使用 Benford 分析可以测试哪些数据?
您只应使用 Benford 分析测试由“自然发生数”组成的数值数据,如记账金额、交易金额、费用或地址号码。Benford 分析不适合于以任何方式受到约束的数值数据。
请按照下列准则来识别适合于 Benford 分析的数值数据:
- 数据集的大小 数据集必须足够大以支持有效的分布。Benford 分析可能无法为少于 500 个的记录提供可靠的结果。
- 前导数字要求 从 1 到 9 的所有数字都必须具有作为前导数字出现的可能性。
- 前导数字组合要求 从 0 到 9 的所有数字都必须具有作为第二个前导数字以及要分析的任何附加数字出现的可能性。
- 受约束的数据 按照预先规定的模式分配或者生成的数值数据不适合于 Benford 分析。例如,请勿使用 Benford 来分析以下数据:
- 顺序支票或发票编号
- 符合特定模式的社保号码或电话号码
- 任何具有防止某些数字出现的范围的编号方案
- 随机数 由随机数生成器生成的数字不适合于 Benford 分析。