WeeklyAlteryxTips#1 複数ファイル読み込み1

Alteryx

Alteryxの週一のTipsの公開を始めたいと思います。

1回目は、データ入力ツールにおける、複数ファイルの読み込みについてです。

ローカルの複数のファイルを大量に読み込まないといけないケースというのはよくあると思います。この場合、スキーマ(フィールド名、データ型)が同じであれば非常に簡単に読み込みを行うことができますが、異なる場合は対処法が変わります。

同じスキーマを持つファイルの場合

データ入力ツールにて、ファイル名の指定で「*(ワイルドカード)」を使うだけです。

例えば、あるフォルダに以下のようなファイルがあるとします。

  • Book1.xlsx
  • Book2.xlsx

この場合は、データ入力ツールでのファイル名の指定を「Book1.xlsx」から「Book*.xlsx」にするだけです。つまり、変化する部分を「*(アスタリクス)」に変更することでいわゆるワイルドカード指定で複数ファイルの指定が可能です。

注意点1:Excelファイルの場合

なお、Excelファイルの場合は、シート名は固定での指定となるため、単一の同一のシート名のみがこの手法で一括読み込み可能です(同一ブック内の異なるシートを一括で読み込みたい場合は異なる手法になります)。

注意点2:CSVファイルの場合、フィールドの入れ替わりに注意

CSVファイルはすべてテキスト型でデータを読み込むため、CSVファイルにとってのスキーマは、フィールド数のみとなります。そのため、フィールドが入れ替わっている場合はそのまま読み込んでしまいます。

これを「*」で読み込むと以下のようになります。

このようなファイルがある場合は、異なるスキーマとして読み込む必要があります。

なお、最近のバージョンではしっかり警告を出してくれるようになっていますので、しっかり結果ウィンドウを見ましょう。

なお、Excelファイル(xlsx)でも同様の動きをしますのでご注意ください(yxdbなどは厳密にフィールド名が異なっていれば異なるスキーマとして読み込みはスキップされます)。※2023/7/15追記

注意点3:空間ファイルの場合

空間ファイル(Shape等)の場合、地図の測地系が異なるファイルも異なるスキーマのファイルとみなす必要があります(平面直角座標系が異なるファイルを同じスキーマとして読み込むと、緯度経度がおかしくなります)。

サンプルワークフローダウンロード

※2023/7/15追加

次回

2回目は、複数ファイル読み込みの後編の予定です。

コメント

タイトルとURLをコピーしました