KNIME - 複数ファイルの読み込み(ワイルドカード ユニオン)について
こんにちは
今回はKNIME(ナイム)を使って複数のファイルの読み込んでユニオンでファイルを結合する方法にトライしてみます。KNIME(ナイム)とは無料のデータ解析アプリケーションです。WINとMACの両方のOSで動作します、データ準備などデータ可視化にの前に必要なデータ準備などの操作をサクッとこなせる万能ツールです。詳しくはこちらもどうぞ。
KNIME - 複数ファイルの読み込み(ワイルドカード ユニオン)について |
KNIME(ナイム)を使って複数のCSVファイルを読み込む
KNIMEで複数のファイルを全部読み込む際にはループ処理を回してファイルが保存されている場所(path)から読み込んであげる必要があります。
今回の例では、2015年から2018年までの「ORDERS_USCA」という各年度の売り上げに関する4つのCSVデータファイルを一度に読み込んでみます。
「スーパーストアテスト」というフォルダ内に幾つかのCSVファイルがありますが、今回は「ORDERS_USCA_****.csv」のファイルの4つのみを取得する。
赤枠の4つだけ取得したい |
最初はList Fileノードを使用し、ファイルのあるフォルダからワイルドカードで該当の4つのpathを取得できるように指定する。(ネットで調べると他のユーザーはURLという項目も取得できているようですが私の場合はpathのみ表示されてました)
ワイルドカードで * (スター)で指定 |
次に、Table Row TO Variable Loop Statusノードを配置 します。こちらは設定はそのままでOK。
includeでpathだけでOK |
その後は、FIle Readerノードを置いて、ここでは適当に一つのファイル(読み込もうとしているCSVでOK)を選択します。これはプレースホルダーのような役割かと。
一つのファイルを読み込んでおく |
最後にLoop Endノードを置いて終了です。
ループエンドの指定は上記 |
取得できた件数を確認する。
21列の9994件のデータとして取得ができました。
最終的な出力はこちら |
今回の複数ファイルを読み込む方法に関するフォーラムのディスカッションや、how-toページは多く見つかります。その中のサンプルを真似ていくつかやってみて手順を理解することができました。私が参考にしたリンクは以下になります。
- Merging several *.csv files
- Reading multiple files using loops
- 【超入門】Loopを回せ! 〜KNIMEを使って複数のファイルを一気に読んでみよう〜
Tableau PrepかTableau Desktopで複数ファイルを読み込む場合
ちなみに同じようなCSVファイルをTableau Prepでやると、、
もっと簡素に行えます。
もっと簡素に行えます。
ワイルドカードユニオンを使用 |
同じ件数を取得していることを確認 |
ちなみに、、
Tableau Desktopで同じようなCSVのユニオンを手動で行うこともできます。
これも便利でよく使います。
これも便利でよく使います。
Tableau DesktopでCSVをユニオン結合 |
See you next time!