データの階層化
コンセプト情報
階層化は、数値フィールドの値に基づいて、テーブル内のレコードを数値間隔(値範囲)でグループ化し、各間隔のレコード数をカウントします。
たとえば、売掛金テーブルを請求金額フィールドに基づいて 5000 ドル間隔、つまり、0 ~ 4,999.99 ドルの請求書、5,000 ~ 9,999.99 ドルの請求書というようにグループ化し、各間隔の取引の総数と取引金額の総額を調べることができます。
関連付けられた数値フィールドの小計
階層化すると、任意で 1 つ以上の関連付けられた数値フィールドを小計できます。上記の例では、割引金額フィールドの小計を計算して、各間隔の割引金額の総額を調べることができます。
メモ
小計フィールドを指定しないと、階層化の対象とするフィールドの小計が自動的に計算されます。
数値間隔の動作
数値間隔とは値の範囲です。数値間隔を作成するオプションは 2 つあります。
- 均等サイズの間隔
- カスタム サイズの間隔
均等サイズの間隔
Analytics は、キー フィールドの値を特定の間隔の数にグループ化して均等サイズの間隔を計算します。
均等サイズの間隔を作成するには、第 1 間隔の最小値と最終間隔の最大値、および必要な間隔の数を指定します。
ヒント
フィールドの実際の最小値と最大値を使用する場合は、間隔のサイズは一般に丸め金額ではありません。間隔のサイズを丸め金額とする場合は、たとえば、0 と 5000 のように、丸め金額の最小値と最大値を指定することができます。
カスタム サイズの間隔
Analytics は、キー フィールドの値を、指定する開始値を持つ間隔にグループ化してカスタム サイズの間隔を計算します。
カスタム サイズの間隔を作成するには、各間隔の開始値、および最後の間隔の終了値を指定します。均等サイズの間隔、またはサイズがさまざまな間隔を作成できます。
均等サイズの間隔とカスタムサイズの間隔の例
以下のテーブルは、48.19 ドルから 4,792.83 までの範囲にある値一式で作成しうる間隔のタイプの例を示したものです。
| 均等サイズの間隔 (実際の最小値と最大値を使用) |
均等サイズの間隔 (丸めの数として指定された最小値と最大値) |
カスタム サイズの間隔 |
|---|---|---|
| 48.19 - 997.11 997.12 - 1,946.04 1,946.05 - 2,894.97 2,894.98 - 3,843.90 3,843.91 - 4,792.83 |
0.00 - 999.99 1,000.00 - 1,999.99 2,000.00 - 2,999.99 3,000.00 - 3,999.99 4,000.00 - 5,000.00 |
0.00 - 99.99 100.00 - 999.99 1,000.00 - 5,000.00 |
階層化と並べ替え
テーブルが並べ替えられているかどうかに関係なく階層化できます。並べ替えられていないテーブルを階層化する場合、Analytics は階層化操作の一環として出力結果を自動的に並べ替えます。
統計オプション
[小計フィールドの統計を含める]オプションを使用すると、小計を出す各数値フィールドの平均値、最小値、および最大値を計算することができます。上の例で、統計オプションを使用すると、間隔ごとに請求金額の平均値、最小値、および最大値が計算されます。さらに、割引金額フィールドの小計を計算している場合は、間隔ごとに割引金額の平均値、最小値、および最大値も計算されます。
階層化の詳細
階層化では、次の操作を実行します。
|
操作 |
階層化の結果 での該当箇所 |
|---|---|
|
数値フィールドに基づいてレコードを間隔ごとにグループ化する |
Trans Amount フィールド, 1 番目 |
|
各間隔に該当するレコード数をカウント(小計)し、その小計が全体に占める割合(カウントの割合)を計算する |
カウント フィールド カウントの割合フィールド |
|
階層化される数値フィールドの最小値と最大値を提供する |
表示されません |
|
任意で、間隔ごとに 1 つ以上の数値フィールドの値の小計を計算し、最初に選択したフィールドを対象にその小計がフィールド合計に占める割合を計算する |
Trans Amount フィールド, 2 番目 フィールドの割合フィールド |
|
任意で、小計を計算する各数値フィールドの平均値、最小値、および最大値を計算する |
表示されません |
|
出力結果に含まれる全数値フィールドの合計を提供する |
合計行 |
|
任意で、出力結果を文字フィールド(顧客 ID やトランザクション タイプなど)の値に基づいてブレークダウンする(文字フィールドは、階層化を実行する前にソートされている必要があります)。 |
表示されません |
階層化の結果
次によって生成される出力結果:
- 売掛金テーブルの取引金額の階層化
( Ar テーブルは ACL DATA\Sample Data Files\Sample Project.ACL にあります)
- $1000 間隔を使用
- 結果を画面に出力する
手順
テーブル内のレコードを均等な数値間隔またはカスタム サイズの数値間隔でグループ化することによって、データを階層化することができます。
各間隔について、任意で、関連する数値フィールドの小計、平均値、最小値、最大値の計算を含めることができます。
- [分析] > [階層化]の順に選択します。
- [メイン]タブで、次のいずれかを実行します。
[層別化の対象]ドロップダウンリストから、層別化するフィールドを選択します。
[層別化の対象]をクリックして、フィールドを選択するか、または式を作成します。
- 省略可能。[小計フィールド]を 1 つ以上選択するか、または[小計フィールド]ボタンをクリックして、小計フィールドを選択するか式を作成します。
小計フィールドを選択しないと、階層化の対象とするフィールドの小計が自動的に計算されます。階層化するフィールドと、それ以外の 1 つ以上のフィールドの小計を出したい場合、または小計された階層化対象フィールドの統計を含めたい場合は、階層化するフィールドを明示的に選択する必要があります。
小計フィールドを選択する順序は、列が結果に表示される順序になります。既存の Analytics テーブルに結果を追加する場合は、結果と既存テーブル内の列の選択と順序は同一である必要があります。
- [最小値]で、最初の間隔の最小値を入力します。
階層化するフィールドに対して事前にプロファイルまたは統計を実行している場合は、階層化するフィールドの最小値がデフォルトで入力されています。必要に応じて、デフォルトを変更できます。
- [最大値]で、最後の間隔の最大値を入力します。
階層化するフィールドに対して事前にプロファイルまたは統計を実行している場合は、階層化するフィールドの最大値がデフォルトで入力されています。必要に応じて、デフォルトを変更できます。
- [間隔の単位]で、次のいずれかを実行します。
[均等]を選択し、[最小値]と[最大値]によって指定された範囲に必要な、均等な間隔の数を入力します。デフォルトの間隔数は 10 です。
ヒント
デフォルトの間隔数は、[ツール > オプション]の順にクリックして[コマンド]タブを選択し、[間隔の数]を更新することによって変更できます。
カスタムサイズの間隔を作成するには、[カスタム]を選択し、各間隔の開始値と最後の間隔の終了値を入力します。各値は改行で区切って入力する必要があります。例:
1 26 51 76 100
。[カスタム]を使用する場合、[最小値]と[最大値]の指定は任意です。[最小値]と[最大値]を指定した場合は、それらの値がそれぞれ最初の間隔の開始点と最後の間隔の終了点となります。[カスタム]フィールドに入力した値は、範囲内に追加の間隔を生成します。[カスタム]に指定する値は、[最小値]で指定された値より大きく、かつ[最大値]で指定された値未満である必要があります。
-
現在のビューの中に処理から除外したいレコードがある場合は、[If]テキスト ボックスに条件を指定します。直接入力するか、または[If]ボタンをクリックし、式ビルダーを利用して IF ステートメントを作成します。
メモ
If 条件は、任意の範囲オプション(先頭、次へ、While)が適用された後に、テーブルに残るレコードに対してのみ評価されます。
IF ステートメントは、ビュー内のすべてのレコードを判断し、指定された条件を満たさないレコードを除外します。
- 省略可能。小計された各数値フィールドの平均値、最小値、および最大値を計算する場合は、[小計フィールドの統計を含める]を選択します。
統計を含めるには、少なくとも 1 つの小計フィールドを選択する必要があります。
- [出力]タブをクリックします。
-
[出力先] パネルで、適切な出力オプションを選択します。
メモ
特定の分析操作に対して適用されない場合に、出力オプションは無効になります。
オプション 詳細 画面 Analytics の表示領域に結果を表示します
ヒント
ヒント表示領域内で、リンク付きの任意の結果値をクリックすると、関連付けられているソーステーブル内の 1 つまたは複数のレコードにドリルダウンすることができます。
出力レコードに多数のレコードが含まれている場合は、結果を画面に表示するよりファイルに保存した方が、処理が速く便利です。
印刷 通常使うプリンターに結果を送信します。 グラフ 結果を基にグラフを作成し、それを Analytics 表示領域に表示します ファイル 結果を新しい Analytics テーブルまたはテキストファイル保存または追加するか、あるいは既存の Analytics テーブルまたはファイルを上書きします。
- Analytics テーブル - テーブルがまだプロジェクトに存在しないときは、開いているプロジェクトに追加されます。
- テキストファイル - ファイルは Analytics の外部に保存されます。
-
出力タイプとして [ファイル] を選択した場合は、[出力指定] パネルで適切な情報を指定します。
オプション 詳細 ファイル タイプ -
Analytics テーブル - 結果を Analytics テーブルに保存または追加するか、既存のテーブルを上書きします。
-
ASCII テキストファイルまたは Unicode テキストファイル - 結果をテキストファイルに保存または追加するか、既存のファイルを上書きします。
名前 -
新しいテーブルまたはファイルを保存するには、次のようにします。
[名前]テキスト ボックスにファイル名を入力します。Analytics によってファイル名があらかじめ設定されている場合は、その設定されている名前を受け入れることも、あるいは変更することもできます。
-
既存のテーブルまたはファイルに追加するか、既存のテーブルまたはファイルを上書きするには、次のようにします。
[名前] をクリックして、[保存] または [名前を付けて保存] ダイアログボックスで既存のテーブルまたはファイルを選択します。
絶対ファイルパスや相対ファイルパスを指定したり、別のフォルダーへ移動したり、プロジェクトの場所とは違う場所でファイルの保存、追加、または上書きを実行したりできます。例:
C:\Results\Output.fil または Results\Output.fil。
メモ
Analytics のテーブル名は、最長で 64 文字の英数字(拡張子 .FIL を含まない)に制限されます。名前にはアンダースコア文字(_)を使用できますが、他の特殊文字やスペースは使用できません。名前の先頭を数字にすることはできません。
ローカル サーバーテーブルに接続されており、Analytics テーブルに保存、追加、またはそれを上書きする場合にのみ有効になります。
-
[ローカル] を選択すると、Analytics プロジェクトと同じ場所で保存、追加、または上書きを実行できます。
-
[ローカル] を選択解除したままにしておくと、サーバーの Prefix フォルダーで保存、追加、または上書きを実行できます。
メモ
出力結果が AX Server テーブルの分析や処理から生成される場合は、[ローカル]を選択します。結果テーブルを AX Server へインポートするために[ローカル]設定を選択解除することはできません。
-
- 省略可能。適切なテキスト ボックスにヘッダーまたはフッターを指定します。
複数行のヘッダーやフッターを入力する場合は、[ヘッダー]または[フッター]をクリックします。ヘッダーまたはフッターのテキスト ボックスで、改行文字としてセミコロン (;) を入力することもできます。
デフォルトでは、ヘッダーとフッターは中央揃えで出力されます。ヘッダー テキストやフッター テキストを左揃えにするには、テキストの前に始め山括弧 (<) を入力します。複数行を左揃えにするには、各行の先頭に山括弧が必要です。
メモ
出力タイプによっては、ヘッダーまたはフッターを指定できないものもあります。
- [詳細]タブをクリックします。
-
[適用範囲]パネルで、適切なオプションを選択します。
- すべて
- 先頭
- 次へ
- While
詳しく表示
適用範囲オプション 詳細 すべて (デフォルト) ビュー内のすべてのレコードを処理することを指定します。 先頭 テキストボックスに数を入力します。ビュー内の先頭レコードから処理が開始され、指定した件数のレコードのみが処理対象とされます。 次へ テキストボックスに数を入力します。ビュー内の現在選択したレコードから処理が開始され、指定した件数のレコードのみが処理対象とされます。行内のデータではなく、ビュー内の左端列で実際のレコード番号が選択されている必要があります。 While WHILE ステートメントを使用して、特定の条件または条件のセットに基づいてビュー内のレコードの処理を制限します。
[While]テキストボックスに条件を入力するか、または[While]ボタンをクリックし、式ビルダーを利用して WHILE ステートメントを作成します。
WHILE ステートメントでは、指定した条件が true と評価される間のみ、ビュー内のレコードを処理することができます。条件が false と評価されるとすぐに処理が終了し、それ以上レコードは判断されません。
While オプションは、"すべて"、"先頭"、または "次" オプションと組み合わせて使用することができます。1 つの制限に達するとすぐに、レコードの処理が停止します。
メモ
[先頭]または[次]オプションは、テーブル内のレコードの物理的な順序またはインデックス付けされた順序のいずれかを参照します。[先頭]または[次]では、テーブル ビューに適用されたフィルタリングまたはクイック ソートは無視されます。ただし、分析操作の出力結果ではすべてのフィルターを考慮します。
ビューでクイック ソートが実行されている場合、"次" は "先頭" のように動作します。
- 最小値と最大値で指定された値を超える値を含めないようにする場合は、[範囲外を出力しない]を選択します。
- 出力結果を文字フィールドの値に基づいてブレーク ダウンさせる場合は、[ブレーク]テキスト ボックスにフィールド名を入力するか、[ブレーク]をクリックしてフィールドを選択または式を作成します。
たとえば、売掛金テーブルを決済額で階層化した結果を、さらに顧客別に分類する可能性があるでしょう。[ブレーク]で使用できるのは 1 つの文字フィールドのみであるため、入れ子のブレークダウンには対応していません。
注意
[ブレーク]オプションによって有効な結果を得るためには、階層化を実行する前にブレークダウン対象の文字フィールドを並べ替えておく必要があります。
- 出力タイプとして[ファイル]を選択し、出力テーブルを既存のファイルの最後に追加する場合は、次のいずれかを実行します。
出力結果と構造が同じであることが確実なテキストファイルまたは Analytics テーブルに追加する場合は、[既存のファイルに追加]を選択します。
Analytics テーブルに追加するときに、出力結果と既存のテーブルのレコード長を ACL に比較させたい場合は、[既存のファイルに追加する]を選択解除されたままにしておきます。レコード長が同一でなければ、データ構造は同じではなく、追加は正しく動作しません。
メモ
出力結果と既存のテーブルの構造が同一であるかどうかが不確かな場合は、[既存のファイルに追加する]を選択解除されたままにしておくことをお勧めします。追加およびデータ構造の詳細については、既存テーブルへの出力結果の追加を参照してください。
-
出力の種類としてファイル(Analytics テーブル)を選択した場合、操作の完了時に、自動的に出力テーブルを開く場合は、[出力テーブルを開く]を選択します。
- [OK]をクリックします。
- 上書きを確認するメッセージが表示されたら、適切なオプションを選択します。
[最後に追加]オプションが表示されることを期待していたのに表示されない場合は、[いいえ]をクリックして操作をキャンセルし、既存テーブルへの出力結果の追加を参照してください。