ベンフォード分析の実行
コンセプト情報
ベンフォード分析は、フィールドに表示される最初の桁(1 ~ 9)や最初の桁の組み合わせの数をカウントし、実数と予測数を比較します。
ベンフォード式で計算された、想定されたカウントは、ベンフォード分布を提供します。自然に発生する数字のセットにおいて、先頭の数の実際のカウントの頻度分布は、ベンフォード分布に近似します。
テストされるデータの 1 つ以上の先頭の数または数の組み合わせが、ベンフォード分布から大幅に逸脱している場合は、数が操作された可能性があることを示すことがあります。逸脱はシンプルかつ合理的な説明である場合もあり、必ずしも操作を示すものではありません。
ベンフォード分析を使用してテストできるデータ
ベンフォード分析は、会計金額、取引金額、費用、またはアドレス番号などの「自然発生数」から構成される数値データをテストする目的でのみ、使用してください。ベンフォード分析は、いかなる方法でも制約を受けた数値データには適していません。
ベンフォード分析に適した数値データを特定するには、次のガイドラインに従ってください。
- データセットのサイズ 有効は分布をサポートするには、データセットが十分に大きいサイズである必要があります。ベンフォード分析では、499 レコード以下の場合には、信頼できる結果が得られない場合があります。
- 先頭の数の要件1 ~ 9 のすべての数値が、先頭の数として発生する可能性がなければなりません。
- 先頭の数の組み合わせの要件0 ~ 9 のすべての数値が、先頭から 2 番目の数および分析対象の追加の数として発生する可能性がなければなりません。
- 制約されたデータ あらかじめ定義されたパターンに従って割り当てまたは生成された数値データは、ベンフォード分析に適していません。たとえば、次の分析では、ベンフォード分析を使用しないでください。
- 連番の小切手または請求書番号
- 特定のパターンにマッピングされる社会保障番号または電話番号
- 特定の数字が出現しない範囲がある番号体系
- 乱数乱数生成器で生成された数値は、ベンフォード分析に適していません。
使用の詳細
以下の表は、Analytics でのベンフォード分析の使用に関する詳細を示します。
| 機能分野 | 詳細 |
|---|---|
| 分析する先頭桁数 | 先頭桁数を最高 6 桁まで分析できます。4 桁以上を分析する場合、ベンフォード分析の結果は、画面に表示したり、プリンターへ送信したりするのではなく、ファイルに出力する必要があります。 |
| 処理時間 | 作業対象のレコード数にもよりますが、5 桁以上の先頭桁数の分析には数分かかる可能性があります。分析している桁数にかかわらず、Esc キーを押せばいつでもこのコマンドを終了させることができます。 |
| データセットのサイズ | 効果的にベンフォード分析を実行するには、大きなデータ セットが必要になります。Analytics では、指定した桁数に対してデータ セットが小さすぎると、結果出力で警告メッセージが表示されます。 |
| 正の値と負の値 | 正の値と負の値を別々に分析すると、異常なデータはより明白になります。分析を始める前にフィルターを使用して、正と負の値を分けます。 |
| ゼロおよび数値以外の文字 |
値がゼロのレコードは無視されますが、その除外されたレコード数は報告されます。 また、先頭にあるゼロ、小数点やドル記号などの数値書式、およびその他の数値以外の桁、さらにテスト基準を満たさないレコードも無視されます。結果として出された数字の桁数が指定した数より少ない場合は、Analytics は結果の右側にゼロを追加します。 |
ベンフォード分析出力結果
ベンフォード分析では以下の出力結果が生成されます。
| 機能分野 | 詳細 |
|---|---|
| 先頭桁 | 検証する先頭桁が表示されます。たとえば、1 桁の先頭桁を指定した場合、1 から 9 の数字が表示されます。2 桁の 先頭桁を指定した場合は、10 から 99 の数字が表示されます。 |
| 実数 | 各先頭桁の総数か、フィールドに含まれる先頭桁の組み合わせの実際の総数が表示されます。 |
| 予測数 | べンフォードの法則に従って計算された、各先頭桁の予測数か、先頭桁の組み合わせの予測数が表示されます。 |
| Z 統計量 | 実際のカウントと予測されるカウントの間の距離の標準偏差の測定である、各数または数の組み合わせの Z 統計量を示します。たとえば、Z 統計量 0.500 は標準偏差の半分を表します。 |
|
下限範囲 上限範囲 (省略可能) |
各先頭の数または数の組み合わせのカウントの計算された上限値と下限値を示します。 出力結果の複数の桁または桁の組み合わせの実際のカウントが境界のいずれかを超える場合、データは操作された可能性があり、調査が必要になります。 メモ 下限と上限の値が含まれるのは、[ベンフォード]ダイアログ ボックスの[上限および下限を含める]チェック ボックスをオンにした場合のみです。 |
手順
フィールドでベンフォード分析を実施し、1 つ以上の先頭の数または数の組み合わせがベンフォード分布から大幅に逸脱するかどうかを検査します。
- 分析するフィールドを含むテーブルを開きます。
- [分析] > [ベンフォード]の順に選択します。
- [メイン]タブで、次のいずれかを実行します。
[ベンフォードの対象]ドロップダウンリストから、分析の対象となるフィールドを選択します。
[ベンフォードの対象]をクリックしてフィールドを選択するか、式を作成します。
メモ
取引金額などの「自然発生数」を含むフィールドを選択します。ベンフォード分析は、いかなる方法でも制約を受けた数値データには適していません。詳細については、ベンフォード分析を使用してテストできるデータ
を参照してください。 - [分析する先頭桁数]に、分析する桁数を 1 から 6 までの数値で入力します。
メモ
4 桁以上の先頭桁を分析する場合、結果はファイルへ出力する必要があります。4 桁以上の分析の結果は、画面へ表示、プリンターへ送信、またはグラフで表示することはできません。
-
現在のビューの中に処理から除外したいレコードがある場合は、[If]テキスト ボックスに条件を指定します。直接入力するか、または[If]ボタンをクリックし、式ビルダーを利用して IF ステートメントを作成します。
メモ
If 条件は、任意の範囲オプション(先頭、次へ、While)が適用された後に、テーブルに残るレコードに対してのみ評価されます。
IF ステートメントは、ビュー内のすべてのレコードを判断し、指定された条件を満たさないレコードを除外します。
- (省略可能)各数または数の組み合わせの出力結果に計算された境界値を含める場合は、[上限および下限を含める]を選択します。
- [出力]タブをクリックします。
- [出力先]パネルで、適切な出力オプションを選択します。
- 画面 – Analytics の表示領域に結果を表示するには、このオプションを選択します。
ヒント
表示領域内で、リンク付きの任意の結果値をクリックすると、関連付けられているソース テーブル内の 1 つまたは複数のレコードにドリルダウンすることができます。
出力レコードに多数のレコードが含まれている場合は、結果を画面に表示するよりファイルに保存した方が、処理が速く便利です。
- 印刷 – デフォルトのプリンターに結果を送信するには、このオプションを選択します。
- グラフ – 結果を基にグラフを作成し、それを Analytics 表示領域に表示するには、このオプションを選択します。
- ファイル – 結果を Analytics テーブルに保存または追加するには、このオプションを選択します。テーブルがまだプロジェクトに存在しないときは、開いているプロジェクトに追加されます。
メモ
当該の分析操作に対して適用されない出力オプションは無効になります。
- 画面 – Analytics の表示領域に結果を表示するには、このオプションを選択します。
- 出力の種類として[ファイル]を選択した場合は、[出力指定]パネルで次の情報を指定します。
- ファイルの種類 – オプションは "Analytics テーブル" のみです。結果を新しい Analytics テーブルに保存するか、または既存の Analytics テーブルに追加します。
- 名前 – [名前]テキスト ボックスにテーブル名を入力します。もしくは、[名前]ボタンをクリックして、[保存]または[名前を付けて保存]ダイアログ ボックスでテーブル名を入力するか、既存のテーブルに上書きまたは追加する場合はそのテーブルを選択します。Analytics によってテーブル名があらかじめ設定されている場合は、その設定されている名前を受け入れることも、あるいは変更することもできます。
また、絶対ファイル パスや相対ファイル パスを指定したり、別のフォルダーへ移動したり、プロジェクトの場所以外の場所にテーブルを保存したり、その場所にあるテーブルに追加したりすることもできます。たとえば、C:\Results\Output.fil または Results\Output.fil のように指定します。
メモ
Analytics テーブル名は、拡張子 .FIL を含まない 64 文字の英数字に制限されています。名前にはアンダースコア文字(_)を使用できますが、他の特殊文字やスペースは使用できません。名前の先頭を数字にすることはできません。
- ローカル – サーバー テーブルに接続している場合のみ有効になります。プロジェクトと同じ場所に出力テーブルを保存する、パスを指定する、または別のローカル フォルダーへ移動する場合は、[ローカル]を選択します。サーバーの Prefix フォルダーに出力テーブルを保存する場合は、[ローカル]を選択解除されたままにしておきます。
メモ
出力結果が AX Server テーブルの分析や処理から生成される場合は、[ローカル]を選択します。結果テーブルを AX Server へインポートするために[ローカル]設定を選択解除することはできません。
- 省略可能。適切なテキスト ボックスにヘッダーまたはフッターを指定します。
複数行のヘッダーやフッターを入力する場合は、[ヘッダー]または[フッター]をクリックします。ヘッダーまたはフッターのテキスト ボックスで、改行文字としてセミコロン (;) を入力することもできます。
デフォルトでは、ヘッダーとフッターは中央揃えで出力されます。ヘッダー テキストやフッター テキストを左揃えにするには、テキストの前に始め山括弧 (<) を入力します。複数行を左揃えにするには、各行の先頭に山括弧が必要です。
メモ
出力タイプによっては、ヘッダーまたはフッターを指定できないものもあります。
- [詳細]タブをクリックします。
-
[適用範囲]パネルで、適切なオプションを選択します。
- すべて
- 先頭
- 次へ
- While
詳しく表示
適用範囲オプション 詳細 すべて (デフォルト) ビュー内のすべてのレコードを処理することを指定します。 先頭 テキストボックスに数を入力します。ビュー内の先頭レコードから処理が開始され、指定した件数のレコードのみが処理対象とされます。 次へ テキストボックスに数を入力します。ビュー内の現在選択したレコードから処理が開始され、指定した件数のレコードのみが処理対象とされます。行内のデータではなく、ビュー内の左端列で実際のレコード番号が選択されている必要があります。 While WHILE ステートメントを使用して、特定の条件または条件のセットに基づいてビュー内のレコードの処理を制限します。
[While]テキストボックスに条件を入力するか、または[While]ボタンをクリックし、式ビルダーを利用して WHILE ステートメントを作成します。
WHILE ステートメントでは、指定した条件が true と評価される間のみ、ビュー内のレコードを処理することができます。条件が false と評価されるとすぐに処理が終了し、それ以上レコードは判断されません。
While オプションは、"すべて"、"先頭"、または "次" オプションと組み合わせて使用することができます。1 つの制限に達するとすぐに、レコードの処理が停止します。
メモ
[先頭]または[次]オプションは、テーブル内のレコードの物理的な順序またはインデックス付けされた順序のいずれかを参照します。[先頭]または[次]では、テーブル ビューに適用されたフィルタリングまたはクイック ソートは無視されます。ただし、分析操作の出力結果ではすべてのフィルターを考慮します。
ビューでクイック ソートが実行されている場合、"次" は "先頭" のように動作します。
-
出力の種類としてファイル(Analytics テーブル)を選択した場合、操作の完了時に、自動的に出力テーブルを開く場合は、[出力テーブルを開く]を選択します。
- 出力タイプとして[ファイル]を選択し、出力テーブルを既存の Analytics テーブルの最後に追加する場合は、次のいずれかを実行します。
出力結果と既存のテーブルの構造が同じであることが確実な場合は、[既存のファイルに追加]を選択します。
出力結果と既存のテーブルのレコード長を Analytics に比較させたい場合は、[既存のファイルに追加する]を選択解除されたままにしておきます。レコード長が同一でなければ、データ構造は同じではなく、追加は正しく動作しません。
メモ
出力結果と既存のテーブルの構造が同一であるかどうかが不確かな場合は、[既存のファイルに追加する]を選択解除されたままにしておくことをお勧めします。追加およびデータ構造の詳細については、既存テーブルへの出力結果の追加を参照してください。
- [OK]をクリックします。
- 上書きを確認するメッセージが表示されたら、適切なオプションを選択します。
[最後に追加]オプションが表示されることを期待していたのに表示されない場合は、[いいえ]をクリックして操作をキャンセルし、既存テーブルへの出力結果の追加を参照してください。