Microsoft Fabric で Data Wrangler を使用してデータ準備を促進する方法
Data Wrangler は、探索的データ分析用のイマーシブ インターフェイスを提供するノートブック ベースのツールです。 この機能は、グリッドのようなデータ表示と動的な概要統計、組み込みの視覚化、および一般的なデータ クリーニング操作のライブラリを組み合わせたています。 各操作は、いくつかの手順で適用ができます。 データ表示をリアルタイムで更新でき、再利用可能な関数としてノートブックに保存できるコードを、PandasまたはPySparkで生成できます。 この記事は、pandas DataFrames の探索と変換にフォーカスしています。 Spark DataFrames での Data Wrangler の使用詳細は、 このリソースを参照してください。
前提条件
Microsoft Fabric サブスクリプションを取得します。 または、無料の Microsoft Fabric 試用版にサインアップします。
Microsoft Fabric にサインインします。
ホーム ページの左側にある環境スイッチャーを使って、Synapse Data Science 環境に切り替えます。
制限事項
- カスタム コード操作は現在、pandas DataFrames でのみサポートされています。
- Data Wranglerの表示は、大型モニターで最も効果的に機能しますが、インターフェースの異なる部分を最小化または非表示にすることで、より小さな画面にも対応できます。
Data Wrangler の起動
Data Wrangler は、Microsoft Fabric ノートブックから直接起動して、pandas または Spark の DataFrame を探索して変換することができます。 Spark DataFrames で Data Wrangler を使用する方法の詳細は、 この関連記事を参照してください。 このコード スニペットは、Pandas DataFrame にサンプル データを読み取る方法を示しています。
import pandas as pd
# Read a CSV into a Pandas DataFrame
df = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/titanic.csv")
display(df)
ノートブック リボンの「ホーム」タブで、Data Wrangler ドロップダウン プロンプトを使用して、編集用のアクティブな DataFrame を参照します。 Data Wrangler で開く内容を選択します。
ヒント
ノートブック カーネルがビジー状態の間は、Data Wrangler を開くことができません。 実行中のセルは、このスクリーンショットに示されているように、Data Wrangler を起動する前に実行を完了する必要があります。
カスタム サンプルの選択
Data Wrangler では、このスクリーンショットに示されているように、ドロップダウンから [カスタム サンプルの選択] を選択し、任意のアクティブな DataFrame のカスタム サンプルを開くことができます。
これにより、必要なサンプルのサイズ(行数)とサンプリング方法(最初のレコード、最後のレコード、またはランダムなセット)を指定するオプションが、ポップアップで表示されます。 次のスクリーンショットで示すように、DataFrame の最初の 5,000 行が既定のサンプル サイズとして機能します。
概要統計情報の表示
Data Wrangler が読み込まれると、選択された DataFrame の説明的な概要が「概要」パネルに表示されます。 この概要には、DataFrame のディメンション、欠損値などの情報などがあります。 Data Wrangler グリッドで特定の列を選択して、「概要」パネルが更新され、その列に関する説明的な統計情報を表示します。 すべての列に関するクイック分析情報は、そのヘッダーでも利用できます。
ヒント
列固有の統計情報とビジュアル (「概要」パネル内および列ヘッダー内) は、列のデータ型によって異なります。 たとえば、このスクリーンショットに示されているように、数値列のビン分割されたヒストグラムは、列が数値型としてキャストされている場合にのみ列ヘッダーに表示されます。
データ クリーニング操作の参照
データ クリーニング手順の検索可能な一覧は、「操作」パネルにあります。 「操作」パネルで特定のデータクリーニング手順を選択して、対象となる列と、その手順を完了するのに必要なパラメータが表示されます。 たとえば、列を数値的にスケーリングするプロンプトには、このスクリーンショットに示されているように、新しい値の範囲が必要です。
ヒント
次のスクリーンショットで示すように、各列ヘッダーのメニューから、より小さな操作を適用できます。
操作のプレビューと適用
選択した操作の結果は、[Data Wrangler] 表示グリッドで自動的にプレビューされ、対応するコードをグリッドの下のパネルに自動的に表示します。 プレビューされたコードをコミットするには、いずれかの場所で [適用] を選択します。 プレビューしたコードを削除して新しい操作を試すには、次のスクリーンショットに示すように [破棄] を選択します。
操作が適用されると、Data Wrangler 表示グリッドと概要統計情報が更新され、結果が反映されます。 コードは、このスクリーンショットに示すように、「クリーニング手順」パネル内にある、コミットされた操作の実行中一覧に表示されます。
ヒント
最後に適用した手順は、いつでも元に戻せます。 次のスクリーンショットで示すように、[クリーニングステップ] パネルに、最後に適用したステップの上にカーソルを置くとごみ箱アイコンが表示されます。
次の表は、Data Wrangler で現在サポートされている操作をまとめています。
操作 | 説明 |
---|---|
並べ替え | 列を昇順または降順で並べ替え |
Assert | 1 つ以上の条件に基づいて行をフィルター処理します。 |
One-hot エンコード | 既存の列の一意の値ごとに新しい列を作成し、行ごとにその値の有無を示す |
区切り記号を使用した One-hot エンコード | 区切り記号を使用してカテゴリ データを分割し、One-hot エンコードを行う |
列のタイプの変更 | 列のデータ型を変更する |
列をドロップする | 1 つまたは複数の列の削除 |
列の選択 | 保持する 1 つ以上の列を選択し、残りの列を削除する |
列の名前の変更 | 列の名前変更 |
欠損値をドロップする | 欠損値を含む行を削除する |
重複する行をドロップする | 1 つ以上の列に重複する値を持つすべての行をドロップする |
欠落値を入力する | 欠損値のあるセルを新しい値に置き換える |
検索および置換 | セルを完全に一致するパターンに置き換える |
列と集計ごとにグループ化 | 列の値でグループ化し、結果を集計する |
空白を取り除く | テキストの先頭と末尾から空白文字を削除する |
テキストの分割 | ユーザー定義の区切り記号に基づいて列を複数の列に分割する |
テキストを小文字に変換する | テキストを小文字に変換する |
テキストを大文字に変換する | テキストを大文字に変換する |
最小値/最大値をスケーリングする | 最小値と最大値の間で数値列をスケーリングする |
フラッシュ フィル | 既存の列から派生した例に基づいて新しい列を自動的に作成する |
ディスプレイを変更
データ ラングラーの表示グリッド上のツール バーの [ビュー] タブで、いつでもインターフェイスをカスタマイズできます。 これにより、次のスクリーンショットに示すように、ユーザー設定と画面サイズによって異なるペインを非表示または表示できます。
コードの保存とエクスポート
[Data Wrangler] 表示グリッドの上にあるツール バーには、生成されたコードを保存するためのオプションがあります。 コードをクリップボードにコピーや、関数としてノートブックにエクスポートができます。 コードをエクスポートすると、Data Wrangler が閉じられ、ノートブックのコード セルに新しい関数が追加されます。 クリーニングされた DataFrame を csv ファイルとしてダウンロードすることもできます。
ヒント
データ ラングラーは、新しいセルを手動で実行した場合にのみ適用されるコードを生成します。このスクリーンショットで示すように、元の DataFrame は上書きされません。
次のスクリーンショットで示すように、エクスポートしたコードを実行できます。
関連するコンテンツ
- Spark DataFrames で Data Wrangler を試すには、 この関連記事を参照してください。
- Fabric の Data Wrangler の実演デモは、Guy in a Cubeの友人によるこの 投稿動画をご覧ください。
- Visual Studio Code で Data Wrangler を試すには、「VS Code の Data Wrangler」を参照してください。
- 必要な機能を見逃していませんでしたか? 私たちにお知らせください! Fabric Ideas フォーラムで提案しましょう。