印刷イメージ(レポート)ファイルと PDF ファイルの定義

印刷イメージ ファイル(レポート ファイルとも呼ばれる)は、印刷されたレポートの電子的なコピーです。Adobe PDF ファイルは、標準の PDF 形式で保存されたアプリケーション ファイルまたはスキャンされたファイルです。印刷イメージ ファイルまたは PDF ファイルを定義およびインポートする方法は、ほとんど同じです。このため、『Analytics ヘルプ』のこのセクションのほとんどのトピックが両方のファイル形式に該当します。

PDF は印刷イメージ ファイルよりも定義とインポートの手順が難しくなる場合があります。これは、ソース PDF で正しく整列しているように見えるデータ列でも、Analytics が PDF を解析(ファイル定義処理の一部)した後にずれが生じる可能性があるためです。Analytics には Xpdf と VeryPDF の 2 つの PDF パーサーがあります。両方のパーサーを試し、どちらの方がより良い結果をもたらすかを確認できます。

注意

コントロール合計を使用し、インポートされた印刷イメージ ファイルまたは PDF ファイルから作成された Analytics テーブルに、ソース ファイルのすべてのデータが含まれることを検証します。印刷イメージ ファイルまたは PDF ファイルを定義するときには、誤ってレコードを除外する可能性があります。分析を開始する前に、Analytics に完全なデータ セットがあることを必ず確認してください。

印刷イメージ ファイルまたは PDF ファイルを正しく定義するための重要な点

印刷イメージ ファイルまたは PDF ファイルの定義には注意が必要です。科学的というより技術的な部分があり、効果的な手法を計画するためには、ソース ファイル内のデータの配置を注意深く分析することが求められます。一般的に、印刷イメージ ファイルまたは PDF ファイルのデータの配置は、他のファイル形式の配置よりも標準化されていません。このため、定義処理が複雑になります。定義を成功させるには、繰り返し処理が必要になることがあります。

以下に、スムーズに処理を進めるために役立つ重要な点や手法を概説します。ファイルを定義する前、定義するとき、または問題が発生した場合は、以下の点をよく確認することをお勧めします。

一般的な点

整列していないデータ

フィールドとレコード

レコードの取り込み

その他の考慮事項

一般的な点

ファイル定義の処理は反復的

通常、印刷イメージ ファイルまたは PDF ファイルの適切な定義には繰り返し作業が伴い、ある程度の試行錯誤が必要な場合もあります。次の個別のタスクの一部またはすべてを実行する必要があります。

  • 1 つ以上のフィールドを定義する
  • 一意の値に基づいて、詳細レコードのセットを定義する
  • 1 つ以上のヘッダー レコードまたはフッター レコードを定義する
  • 取り込まれたレコード セットを調整するための条件を修正または作成する
  • 各フィールド定義およびレコード定義の正確性を確認する
  • 不正確なフィールド定義またはレコード定義を編集する
  • 整列していないデータを処理する方法の 1 つとして、ファイルを複数回処理する

繰り返し実践することで上達する

印刷イメージ ファイルまたは PDF ファイルの定義(特に、整列していないデータがあるファイルの定義)は、最初はかなり難しく感じるかもしれません。実践を積むことで、ソース ファイルのデータの構造を見極め、定義するための適切な方法を見つけることがうまくなります。

Analytics に含まれている以下の 2 つのサンプル ファイルを使用して実践できます。

  • REPORT3.TXT は簡単に定義できます。Analytics はファイルの詳細レコードを自動定義しますが、エラーが含まれるため、自動定義を編集する必要があります。
  • Inventory.pdf の定義はより難しくなります(ページごとにファイルを解析する場合を除く)。これは整列していないデータが含まれているためです。Analytics はデータが整列していないファイルのどの部分も自動定義できません。このため、一から手作業で定義を作成する必要があります。

Analytics は別のサンプル ファイル Report.txt の詳細フィールドおよびレコードは完璧に自動定義します。データ定義ウィザードReport.txt の自動定義を学習しておくと役立つこともあります。

整列していないデータ

整列していないデータへの対処

データ定義ウィザードでは、解析された PDF または印刷イメージ ファイル(解析された PDF ファイル内の整列しているデータと整列していないデータ を参照)でデータ列が整列していないために、使用可能な Analytics テーブルの作成が難しくなったり、作業に時間がかかったりすることがあります。整列していないデータが重要な問題である場合は、次のいずれかの方法を検討してください。

メモ

状況に最も適した方法は、定義しようとしているデータの性質と、Analytics における使用経験によって異なります。Analytics を使い始めたばかりならば、別の形式のデータを要求することを検討してください。

  • ファイルのソースの画面に戻って、別の形式のデータを要求します。
  • 変換ソフトウェアを使用してファイルを変換してみます。たとえば、PDF ファイルを Excel ファイルまたはテキスト ファイルに変換するソフトウェアなどです。変換されたファイルを Analytics にインポートします。
  • PDF のデータをコピーして、テキスト エディターに貼り付けます。その後、そのテキスト ファイルを Analytics にインポートします。
  • 次の方法の 1 つ以上を使用して、整列していないフィールドを定義します。
    • 整列していないフィールドの左端と右端の文字を取り込むのに十分な長さがあるフィールド定義を作成します。
    • 重複フィールドの定義を作成します。
    • 複数の整列していないフィールドを含めることができる、単一の長いフィールド定義を作成します。

    詳細については、印刷イメージまたは PDF ファイルで整列していないフィールドの定義を参照してください。

  • ソース ファイルを 2 回以上インポートします。各インポートで、レコードの異なるサブセットを定義します。結果として生じる Analytics テーブルを追加して、完全なデータ セットを作成します。

    詳細については、印刷イメージまたは PDF データのサブセットの定義とインポートを参照してください。

解析された PDF ファイル内の整列しているデータと整列していないデータ

以下のように、解析された PDF ファイルの左端の 2 つのデータ列は整列しています。残りのデータ列は整列していません。

フィールドとレコード

フィールドは水色、レコードは灰色、未定義データは白色

データ定義ウィザードを使用して、印刷イメージ ファイルまたは解析された PDF ファイルのフィールドやレコードを定義するにつれて、3 つの色によってデータの状態が示されます。

  • 水色の強調表示は、データが定義済みフィールドの一部であることを示します。また、すべての定義済みフィールドは定義済みレコードの一部です。
  • 灰色の強調表示は、データは定義済みレコードの一部であるが、定義済みフィールドの一部ではないことを示します。
  • 白色の背景は、データが完全に未定義であることを示します。

メモ

水色で強調表示されたフィールドのみが、結果として生じる Analytics テーブルの一部になります。

定義済みレコード内の灰色で強調表示されたデータは、フィールドとしても定義されない限り、無視されます。定義済みフィールドの間にあるレコードの灰色の部分は、結果の Analytics テーブルで省略されます。

完全に未定義のデータは無視されます。このようなデータを結果の Analytics テーブルに含めたい場合は、フィールドやレコードを追加定義する必要があります。

定義済みフィールド、定義済みレコード、および未定義データ

詳細、ヘッダー、フッターの 3 種類のデータを定義できる

データ定義ウィザードでは、印刷イメージ ファイルまたは PDF ファイル内の 3 種類のデータを定義できます。

データの種類 説明

での該当箇所

PDF ファイル内の異なる種類のデータ

詳細データ

レコードに配置される、ファイルの基本的な内容。

詳細データの定義は必須です。詳細データを定義せずに、印刷イメージ ファイルまたは PDF ファイルを定義することはできません。

  • クレジットカード取引
  • インベントリ レコード
#2、青の枠線
ヘッダー データ

詳細レコードのブロックまたはサブセットの上に表示される識別情報。

ヘッダー データの定義は任意です。ヘッダー情報情報が不要な場合は、定義する必要はありません。

  • クレジット カード取引が発生した店番号と場所
  • “製品クラス” 情報
#1、赤の枠線
フッター データ

詳細レコードのブロックまたはサブセットの下に表示される情報。

フッター データの定義は任意です。フッター情報が不要な場合は、定義する必要はありません。

  • 店別の小計されたクレジット カード取引
  • “クラス合計”
#3、アクアブルーの枠線

追加のガイドライン

  • 任意の順序で、詳細、ヘッダー、またはフッター データを定義できます。順序は強制されません。
  • フィールド名を指定することもできます(PDF ファイル内の異なる種類のデータ で緑色の輪郭で示されています)。フィールド名を指定する方法は、詳細、ヘッダー、フッター データを定義する処理によって異なります。

    メモ

    ヘッダー データを使用して、印刷イメージまたは PDF ファイルに表示される可能性があるフィールド名を定義しようとしないでください。

PDF ファイル内の異なる種類のデータ

以下の例では、棚卸資産評価レポートの PDF に含まれる異なる種類のデータを強調表示しています。

解析された PDF ファイルの詳細データとヘッダー データ

以下の例は、データ定義ウィザードで解析されたときの棚卸資産評価レポートです。5 つのフィールドを持つ 1 つの詳細レコードと、2 つのフィールドを持つ 1 つのヘッダー レコードが定義されています。

ヘッダーおよびフッター データの処理方法

データ定義ウィザードは、ヘッダー データやフッター データを、フィールドを持つレコードのように扱いますが、結果として生じる Analytics テーブルの実際のレコード セットになるのは詳細データのみです。定義するヘッダーまたはフッター データは、詳細レコードに追加される 1 つ以上のフィールドになります。

追加されたヘッダ-およびフッター フィールドは、レコードの個々のブロックまたはサブセット内のすべてのレコードに対して同じ値を繰り返します。たとえば、レコードのあるブロックでは "Store 3"、その次のブロックでは "Store 4" などとなります。

ソース ファイルのフィールド名を選択しない

印刷イメージまたは PDF ファイルでフィールド名を選択することにより、フィールド名を定義しないでください。直観に反しているように感じるかもしれませんが、ソース ファイルのフィールド名はすべて選択しないでおいてください。代わりに、[フィールド定義]ダイアログ ボックスに名前を入力して、フィールド名を作成します。ソース ファイルのフィールド名を選択すると、Analytics はそのフィールド名を、フィールドに含まれるデータとして扱います。

レコードのセットを取り込むための一意の値を指定する

レコードのセットを正確に取り込むには、レコードのセットに対して一意の値を選択または指定することが重要です。つまり、その値は、セット内の全レコードの特定のバイト位置(文字位置)に現れ、ソース ファイル内のどこか別の位置には現れません。一意の値は、1 文字でも複数の文字であってもかまいません。

たとえば、レコードのセットに対して一意の値を選択する では、一意の値として "Unit Cost" フィールドの小数点が選択されています。これは、フィールド内のすべての金額で同じ位置に現れ、上下のフィールドのその位置には現れません。

一意の値は、次の 2 つの場所のいずれかで選択または指定できます。

  • 最初のデータ フィールドの定義を開始するために選択する、最初のデータ値
  • 最初のデータ値と同じ行

レコードのセットに対して一意の値を選択する

以下の例では、一意の値は最初のデータ値と同じ行にあります。最初のデータ値(選択後、ボックスで囲まれています)は、"Product No" フィールドの最初の製品番号です。

一意の値を選択するためのヒント

一意の値を選択するには、レコード セットの上下のデータと比較したときに、一貫して配置されている 1 つ以上の文字が一意であるか、または一意に配置されているレコード データを探します。

以下に挙げる値は、一意の値になり得る良い候補です。これらは通常、すべてのレコードで同じ位置に現れ、レコード セット外の同じ位置には現れません。

  • 数値の小数点
  • 日付の 1 つまたは両方のスラッシュ
  • ID 番号の 1 つ以上のハイフン
  • 標準の接頭辞を形成する文字列
  • ヘッダーまたはフッター データで、"Customer ID:" や "Subtotal:" のように一貫して現れるラベル

一意の値の最初の選択により、[レコード定義]ダイアログ ボックスで "正確に一致する" 条件を作成します。以下の例では、条件は、すべてのレコードがレコード セットに含まれるようにするには、小数点がバイト位置 74 に現れる必要があるということを示しています。

必要に応じて、"正確に一致する" を "数字" や "空白以外" などの一般的な一致に変更することができます。これにより、一意の値を指定するときの柔軟性が増します。詳細については、レコード定義での作業を参照してください。

レコードのセットを正確に取り込む

レコードのセットを正確に取り込むことは難しい場合があります。取り込むレコードのセットに対して一意だと思われる値を選択しても、必要なレコードの一部が取り込まれていなかったり、レコード以外の追加データが取り込まれていたりすることを見つける場合があります。

この状況をより適切に理解するには、印刷イメージや PDF ファイルを、行と列で構成されるグリッドとして考えてみると役に立つかもしれません。各列は必ず 1 つの文字または 1 つのスペースであり、ファイルの一番上からファイルの一番下まで広がっていると想像してください。

特定の位置にある値を選択または指定して、レコードのセットを取り込む場合、Analytics は、値を検索するときに、ファイルの一番上から一番下まで、その位置にある任意の文字を検討対象とします。文字は、レコード データと見なす行の外側にある場合でも検討されます。指定した値が十分に正確でないと、レコード以外の追加のデータが取り込まれ、レコードのセットに含まれることがあります。

不正確に定義されたデータ フィールド

上記の例では、レコード セットを取り込むための一意の値として、"Product No" フィールドの最初の位置で数字の値を指定した場合、ファイル内のその位置にある数字と、製品番号の実際の最初の数字が取り込まれます。以下の例を参照してください。

正確に定義されたデータ フィールド

しかし、フィールドの 9 桁すべてを含む数値を指定した場合は、意図したレコードのセットのみを取り込むために十分に正確な条件を作成することになります。

複数の条件を使用してレコードのセットを取り込む

日付フィールドのスラッシュなどの 1 つの条件では、レコードのセットを正確に取り込むのに十分ではない場合があります。もしかしたら、日付の値の一部が欠落しているかもしれません。あるいは、偶然、取り込むレコード セットの外側にある、ヘッダー情報またはフッター情報内の同じ位置にスラッシュが現れる場合もあります。このような場合は、別の条件を追加して、取り込まれたレコードのセットを微調整できます。

メモ

条件を使用して、ソース ファイルの行を包含または除外することができます。

複数の条件の例:

  • 日付フィールドの最初のスラッシュと日付フィールドの 2 番目のスラッシュを持つ行を含める
  • 数値フィールドに小数点がある行を含め、"Subtotal" という単語を含む行を除外する
  • 最初に指定されたバイト位置のセットに英文字がある行を含めるか、2 番目に指定されたバイト位置のセットに英文字がある行を含める

詳細については、レコード定義での作業を参照してください。

ファイル全体のレコード定義とフィールド定義を確認する

レコードとフィールドを定義するときには、必ず、ファイルをスクロールして、定義の精度を確認してください。空白の値、予期しない文字、および整列していないデータがあると、次のような問題が発生する可能性があります。

  • ファイルの一部のレコードが除外される
  • レコード以外のデータがレコードとして取り込まれる
  • フィールド データがフィールド定義内に不完全な状態で含まれており、値が切り捨てられる
  • 2 つの異なるフィールドのデータが 1 つのフィールド定義に表示される

レコード定義が正しくない場合は、レコードのセットを取り込むために使用する条件を変更または作成する必要があります。詳細については、レコード定義での作業を参照してください。

フィールド定義が正しくない場合は、定義を編集する必要があります。詳細については、フィールド定義での作業を参照してください。

複数行のレコードおよびフィールドを定義できる

ソース ファイル内の複数行にわたるレコードやフィールドのデータを定義することができます。たとえば、各レコードの住所データを複数の行に配置できます。詳細については、複数行のレコードおよびフィールドの操作を参照してください。

必要なデータのみを定義してインポートする

分析に必要ではないデータ フィールドを定義することで、時間を無駄にしたり、定義およびインポート処理を複雑にしないでください。ヘッダー レコードやフッター レコードは、それらが有益な情報を加える場合にのみ定義してください。含めるデータ要素が追加されるごとに、複雑さが増し、定義処理をより難しくすることがあります。

結果の Analytics テーブルのフィールドの順序を制御する

詳細レコードでフィールドを定義する順序が、結果の Analytics テーブルに表示される順序になります。定義処理中に詳細フィールドを削除して、もう一度追加すると、元の位置が失われ、詳細フィールドの最後に配置されます。内部的に入れ替えようと、詳細フィールドのまとまりはそのままです。

ヒント

最初の詳細フィールドを使用して詳細レコードを取り込むが、そのフィールドを結果の Analytics テーブルの先頭に表示したくない場合は、フィールドを使用してレコードを取り込んだ後、フィールドを削除して再度追加します。

ヘッダー フィールドおよびフッター フィールドは、これらを定義した順序で結果の Analytics テーブルに表示されます。ヘッダー フィールドとフッター フィールドは、最初の詳細フィールドを定義していない場合には詳細フィールドの前に表示され、定義している場合には詳細フィールドの後に表示されます。

また、印刷イメージまたは PDF ファイルを Analytics にインポートした後に、フィールドを並べ替えるオプションもあります。ビュー内で列をドラッグして、順序を変えることができます。さらに、テーブル レイアウトのフィールドが物理的に並べ替えられている状態で新しいテーブルを作成したい場合は、ビュー単位で抽出することもできます。詳細については、データの抽出を参照してください。Analytics 内でフィールドを並べ替える方が、データ定義ウィザードで正確なフィールドの順序を維持しようとするよりも簡単な場合があります。

Analytics が行う可能性があるファイルの自動定義

Analytics は、データの繰り返しパターンを特定できる場合、印刷イメージまたは PDF ファイルを自動定義することがあります。データ定義ウィザードのソース ファイルの初期表示に水色のフィールド定義と灰色のレコード定義が含まれる場合、Analytics はファイルの一部またはすべてを自動定義しています。

ファイル全体のフィールド定義とレコード定義を確認し、自動定義が完全で正確であると判断した場合には、ファイル定義の作業はほぼ完了しています。データ定義ウィザードの次のページに進むことができます。

多くの場合、Analytics の自動定義は完全に正確ではありません。そこで、自動定義を編集するか、自動定義全体を削除して最初から手動定義を開始するか、簡単な作業を決定する必要があります。いつでも削除またはやり直しができるため、最初に一部を編集してみて、自分の要件と自動定義に大幅な隔たりがある場合には、その時点で削除することができます。

メモ

詳細レコードのみが自動定義されます。ヘッダーまたはフッター データは、必要であれば、手動で定義してください。

コントロール合計を使用して、結果の Analytics テーブルを検証する

データ分析を開始する前に、コントロール合計を使用し、印刷イメージ ファイルまたは PDF ファイルから作成された Analytics テーブルに、ソース ファイルにあるすべてのデータが含まれることを検証します。不完全な Analytics テーブルがあると、分析が無効になります。

コントロール合計を使用して Analytics テーブルを検証するには

  1. 次のいずれかを実行します。

    • ソース ファイルでレコードがグループ化されている場合は、Analytics テーブルを分類化または要約し、同じ方法でレコードをグループ化します。

      分類化または要約を行うときには、ソース ファイルの 1 つ以上の小計フィールドと一致する[小計フィールド]を選択します。

      詳細については、データの分類化データの要約を参照してください。

    • ソース ファイルでレコードがグループ化されていない場合は、ソース ファイルでも合計が算出されている Analytics テーブルのフィールドを合計します。

      詳細については、フィールドの合計を参照してください。

  2. 結果を画面または新しい Analytics テーブルに出力し、Analytics の小計または合計をソース ファイルの数値と比較します。

    すべての数値が同じ場合は、完全なデータ セットがあります。

    1 つ以上の数値が同じではない場合、Analytics テーブルのデータはソース ファイルのデータと異なっています。データのサブセットをインポートして、Analytics で完全なデータ セットを再作成した場合は、Analytics テーブルに重複するレコードが存在する可能性があります。重複レコードの削除については、重複の削除を参照してください。

    重複するレコードが問題ではない場合は、ソース ファイルの定義とインポートをやり直さなければならない場合があります。定義をやり直す場合は、フィールド定義およびレコード定義をよく確認し、データを正確に取り込むようにしてください。

Analytics 14.1 ヘルプ