はじめに
今回は総当たりでデータを作成する、Cross Joinerを扱いたいと思います。勤怠表の元データを作成したい場合などに便利ですね。
今回のテーマ ~Cross Joiner~
覚えてほしいこと
総当たりでデータを作成したい場合にはCross Joiner
やりたいこと
下記のように、1月の日付に対して各社員のデータをコピーしていきます。いわゆる総当たりでデータ作成を行います。
Cross Joinerの使い方
総当たりでデータを作成したい場合に使用します。勤怠表の元データを作成するなど、日付に関する処理のときにたまに出てきます。
Workflow
Workflowは下記からダウンロードできます。
Confirm - Before After
総当たりは、下図の通り、
上のInput1行目×下のInput全行コピー
上Table2行目×下Tableコピーのように進んでいきます。
コラム数は上のInputのコラム数+下のInputのコラム数 となり、行数は、上のInputの行数×下のInputの行数という形になります。
Configure
設定は必要ありません!総当たりですもんね。
一応オプションがあるので解説します。
Bottom table's column name suffix
下のInputテーブルが上のInputテーブルと同じコラム名を持っていた場合に、コラム名が重ならないようにコラム名のあとにつける名前です。
Separator for new RowIds
OutputのRowIDに対しての設定です。上のRow IDと下のRow IDをくっつける際に間に入れる文字を指定します。
Chunk size
データが多い時に実行を分割して同時実行させるための設定です。
Append top data tables RowIds
チェックを入れると、Outputのデータに上のInputテーブルのRowIDを新しいコラムといて挿入できます。
Append bottom data tables RowIds
チェックを入れると、Outputのデータに下のInputテーブルのRowIDを新しいコラムといて挿入できます。
おわりに
今回はCross Joinerという知ってれば便利なNodeを紹介しました。
余談
今回ご紹介するのは、「大統領の執事の涙」です。
もうじき無料配信が終了しそうだったので、見てみましたが非常に良かったです。大統領に仕え続けたある黒人執事の人生とともに、黒人差別の歴史が描かれています。最近白人警官による黒人男性の殺害が話題になりましたが、どこか他人事のところがありました。これを見ると黒人の実際の息苦しさが伝わってきます。どこまでが実話なのかが気になるところです。感動できる内容でした。
参考リンク
-
すさんのBlog:
【随時更新?】当ブログタイトル一覧 〜ブログの情報取得もKNIMEでやるよ〜 - 非プログラマーのためのインフォマティクス入門。(仮)
- KNIME公式Node Pit(英語):
- KNIME Example Workflow(英語):