配列からレコードを分割

「配列からレコードを分割」プロセッサを使用すると、入力配列内の各要素ごとにレコードを新たに分割することで、1つのレコードから複数のレコードを作成できます。

「配列からレコードを分割」は、複数のレコードで表現される必要があるデータが間違って1つのレコードのみにキャプチャされた場合に使用します。つまり、間違って非正規化されたデータを正規化するために使用します。

分割が必要な非正規化データは通常、このプロセッサを使用する前に前処理する必要があります。たとえば、次の受注表ではフリー・テキスト・フィールドを使用して複数の受注(複数の注文番号と製品説明を持つ)が誤って次の受注表の1つのレコードに入力されました。

Order_ID Order_Number Product_Desc

O574112

2788143 / 2788144

Home PC Package / Color Printer

この場合、Order_Number属性およびProduct_Desc属性の両方に簡単な前処理が必要です。文字列から配列を作成プロセッサを使用して/文字を区切り文字に使用して配列を作成します。次に「配列からレコードを分割」プロセッサに配列を入力すると、次のようにレコードが分割されます。

Order_ID Order_Number.normalized Product_Desc.normalized

O574112

2788143

Home PC Package

O574112

2788144

Color Printer

前述の例では、多数の配列属性がこのプロセッサに入力されました。この場合、各入力レコード当たりの出力レコード数は要素数が最も多い配列属性の要素数と一致します。各属性の入力ではないデータは、各入力レコードから作成された出力レコードのすべてに単にコピーされます。たとえば、Title.arrayとFirstName.arrayを入力して、次のレコードを分割する場合。

Cust_ID Title.array FirstName.array

13451

{Mr}{Mrs}

{John}{Dorothy}{James}

Smith

出力レコードは次のとおりです。

Cust_ID Title.array FirstName.array

13451

Mr

John

Smith

13451

Mrs

Dorothy

Smith

13451

James

Smith

Title.arrayの配列にFirstName.arrayの3番目の要素と対応する要素がないため、Title.array.normalizedの最後のレコードはNullになります。

次の表に、構成オプションを示します。

構成 説明

入力

レコードの分割に使用する配列属性を1つ以上指定します。入力された配列の各要素が単一値として出力されます。

オプション

なし。

出力

データ属性またはフラグ属性の出力を記述します。

データ属性

次のデータ属性が出力されます。

  • Split: レコードの分割後の、入力された各配列属性ごとに正規化された属性値が割り当てられます。

フラグ

次のフラグが出力されます。

  • SplitFlag: 配列からの分割に問題がなかったかどうかを示します。使用可能な値: Y/N。

次の表に、このプロファイラによって生成される統計情報を示します。

統計 説明

入力レコード

入力されたレコードの数(分割前)。

出力レコード

出力されたレコードの数(分割後)。

ドリルダウンすると、すべての出力レコードが表示されます。

分割%

複数の出力レコードに分割された入力レコードのパーセント値。

ドリルダウンすると、分割された出力レコード(入力配列属性が複数の要素を持つレコード)が表示されます。

出力フィルタ

なし。

この例では、照合のために個人名のデータ・セットを準備します。データには、別名や異なる綴りを持つ個人名が多数含まれます。これらは、単一のAliases.Array属性へと前処理され、次に、配列からレコードを分割を使用してそれぞれの名前が別々に照合できるように分割されます。

Aliases.Array Aliases.Array.Split

{Jose Angel Veron}{Jose Veron}

Jose Veron

{Jose Angel Veron}{Jose Veron}

Jose Angel Veron

{Namik Zouahi}{Namiq Zouahi}{Namig Zouahi}

Namik Zouahi

{Namik Zouahi}{Namiq Zouahi}{Namig Zouahi}

Namiq Zouahi

{Namik Zouahi}{Namiq Zouahi}{Namig Zouahi}

Namig Zouahi

{Christine Moss}{Christine Lee}{Christine Graham}

Christine Moss

{Christine Moss}{Christine Lee}{Christine Graham}

Christine Lee

{Christine Moss}{Christine Lee}{Christine Graham}

Christine Graham