
ステップの分け方
Tableau Prepユーザー会のmitamuuです。今回のトピックは、クリーニングステップの適切な分け方です。

クリーニングステップをどのように分けるかは、初心者にとっては悩ましい問題ですね。以下に、Tableau Prepでステップを分ける際の基本的なアドバイスをいくつかまとめました。ステップの分け方は利用シチュエーション、作業チームへの共有有無など、いろいろな要素で変わってきます。
1. 目的に応じたステップの設計
まず脳内で以下の2点を整理します。場合によっては、紙やExcelに処理方法を書き出すのも一つの方法です。Prepは視覚的に考えながらステップを作り上げられるのが魅力の一つであり、いきなり着手することも可能ですが、Pivot処理などを使うと後戻りでエラーが出ることがあるので、最初のうちは頭で組み立ててからやることをお勧めします。
データの理解:最初にデータを理解し、どのようなクレンジングや変換が必要かを確認します。全体像を把握することが重要です。
目的に応じたクレンジング:目的に応じたクレンジングや変換を行います。
2. クリーニングステップを分ける基準
タスクごとに分ける:各ステップで明確なタスク(欠損値の処理、データ型の変換、フィルタリングなど)を行うように分けます。これにより、各ステップが何をしているのかが明確になります。
例:
ステップ1:データの前処理(欠損値の処理、表記ゆれ)
ステップ2:四則演算などの計算処理、RANKなど要件処理

3. ステップ数の最適化
簡潔さと明確さのバランス:ステップが多すぎると複雑になり、少なすぎると管理が難しくなるため、簡潔かつ明確に分けることが重要です。
統合できるステップは統合:同じ種類の操作を複数のステップで行う必要がない場合、1つのステップにまとめることでわかりやすくなります。
4.メリットデメリット
ステップをまとめる場合
メリット
ステップが少ないため、全体のワークフローがシンプルに見える。
管理が容易。
デメリット
エラーが発生した場合、どの部分が原因か特定しにくい。
複雑なステップでは、変更や修正が困難。
後からステップを見直したり、他のチームメンバーが理解するのが難しくなる。
ステップを分ける場合
メリット
デバッグの容易さ:
各ステップが明確であるため、エラーの原因を特定しやすい。(デメリットと相反する)
可読性の向上:
各ステップが具体的なタスクを実行するため、後から見ても何をしているかがわかりやすい。
他のチームメンバーや将来の自分が理解しやすい。
柔軟性:
変更や追加が容易。
必要に応じて特定のステップを再利用可能。
デメリット
複雑なフロー:
ステップが多くなると、全体のワークフローが複雑に見える。
5.適切な判断を行うために気に掛けること
チームのスキルレベルとコラボレーション
複数の人が関わるプロジェクトでは、ステップを分けておく方が理解しやすくなります。
経験豊富なメンバーのみで作業する場合は、一つのステップにまとめても問題ないことがあります。
デバッグとメンテナンスの必要性
デバッグやメンテナンスが頻繁に必要な場合は、ステップを分けておく方が便利です。
6.可読性を高めるには
ステップ名:ステップ名を変更し、何を行っているのかを説明します。
コメントの追加:ステップ名では書けなかった詳細情報をコメントとして追加し、何を行っているのかを説明します。これにより、自分や他のチームメンバーが後から見ても理解しやすくなります。

7. 練習の仕方
練習:さまざまなデータセットで練習し、異なるシナリオでステップを分ける経験を積みます。Preppin' Dataには豊富なデータが準備されています。
フィードバック:同僚や先輩、フィードバックを求め、自分の方法が効率的かどうかを確認します。Preppin' Data の仲間たちは毎週集まって自分のフローを見せて、お互いのステップの違いからスキルアップしています。
8. 1Step教なるものについて
1つのクリーニングステップ内にすべての処理を入れようとするユーザーがいます。
メリット: 1つのステップに収めることで、複雑なことを処理するスキルを習得できます。
デメリット: データの加工が複雑になり、自分や他のチームメンバーが後から見ても理解しづらくなります。
これらのステップを参考にしながら、自分のデータと目的に合わせて最適な方法を見つけてください。