VS Code で Data Wrangler の使用を開始する
Data Wrangler は、VS Code と VS Code Jupyter Notebook に統合された、コード中心のデータ表示およびクリーニング ツールです。豊富なユーザー インターフェイスを提供し、データを表示および分析したり、有益な列統計や視覚化を表示したり、データをクリーニングおよび変換する際に Pandas コードを自動的に生成したりします。
以下は、ノートブックから Data Wrangler を開き、組み込み操作でデータを分析およびクリーニングする例です。その後、自動生成されたコードがノートブックにエクスポートされます。
このドキュメントでは、次の方法について説明します。
- Data Wrangler のインストールと設定
- ノートブックから Data Wrangler を起動する
- データ ファイルから Data Wrangler を起動する
- Data Wrangler を使用してデータを探索する
- Data Wrangler を使用してデータに操作とクリーニングを実行する
- データラングリング コードを編集してノートブックにエクスポートする
- トラブルシューティングとフィードバックの提供
環境をセットアップする
- まだ行っていない場合は、Python をインストールしてください。重要: Data Wrangler は Python バージョン 3.8 以降のみをサポートしています。
- Visual Studio Code をインストールします。
- Data Wrangler 拡張機能をインストールする
Data Wrangler を初めて起動すると、接続したい Python カーネルを尋ねられます。また、必要な Python パッケージ (Pandas など) がインストールされているかどうか、マシンと環境をチェックします。
以下は、Python と Python パッケージの必要なバージョンと、それらが Data Wrangler によって自動的にインストールされるかどうかのリストです。
名前 | 最低必要バージョン | 自動インストール |
---|---|---|
Python | 3.8 | いいえ |
pandas | 0.25.2 | はい |
これらの依存関係が環境に見つからない場合、Data Wrangler は pip
を使用してそれらをインストールしようとします。Data Wrangler が依存関係をインストールできない場合、最も簡単な回避策は、手動で pip install
を実行し、再度 Data Wrangler を起動することです。これらの依存関係は、Data Wrangler が Python および Pandas コードを生成するために必要です。
Data Wrangler を開く
Data Wrangler を使用している間は、常にサンドボックス環境にいることになります。つまり、データを安全に探索および変換できます。元のデータセットは、変更を明示的にエクスポートするまで変更されません。
Jupyter Notebook から Data Wrangler を起動する
Jupyter Notebook から Data Wrangler を起動するには、3 つの方法があります。
- Jupyter > 変数パネルで、サポートされているデータ オブジェクトの横に、Data Wrangler を起動するボタンが表示されます。
- ノートブックに Pandas データフレームがある場合、データフレームを出力するコードを実行した後、セルの下部にData Wrangler で 'df' を開くボタン (ここで 'df' はデータフレームの変数名) が表示されます。これには、1)
df.head()
、2)df.tail()
、3)display(df)
、4)print(df)
、5)df
が含まれます。 - ノートブック ツールバーで、データを表示を選択すると、ノートブック内のサポートされているすべてのデータ オブジェクトのリストが表示されます。その後、そのリストの中から Data Wrangler で開きたい変数を選択できます。
ファイルから直接 Data Wrangler を起動する
Data Wrangler はローカル ファイル (.csv
など) から直接起動することもできます。これを行うには、開きたいファイルを含む任意のフォルダーを VS Code で開きます。ファイル エクスプローラー ビューでファイルを右クリックし、Data Wrangler で開くをクリックします。
Data Wrangler は現在、以下のファイル タイプをサポートしています。
.csv
/.tsv
.xls
/.xlsx
.parquet
ファイルの種類に応じて、ファイルの区切り文字やシートを指定できます。
これらのファイル タイプを既定で Data Wrangler で開くように設定することもできます。
UIツアー
Data Wrangler には、データを操作する際に 2 つのモードがあります。各モードの詳細は、以下のセクションで説明します。
- 表示モード: 表示モードは、データをすばやく表示、フィルター処理、並べ替えができるようにインターフェイスを最適化します。このモードは、データセットの初期探索を行うのに最適です。
- 編集モード: 編集モードは、データセットに変換、クリーニング、または変更を適用できるようにインターフェイスを最適化します。インターフェイスでこれらの変換を適用すると、Data Wrangler は関連する Pandas コードを自動的に生成し、これを再利用のためにノートブックにエクスポートできます。
注: 既定では、Data Wrangler は表示モードで開きます。この動作は、設定エディター で変更できます。
表示モードのインターフェース
-
データ概要パネルには、データセット全体の詳細な概要統計、または選択されている場合は特定の列の概要統計が表示されます。
-
列のヘッダーメニューから、列にデータフィルター/ソートを適用できます。
-
Data Wrangler の表示モードと編集モードを切り替えて、組み込みのデータ操作にアクセスします。
-
クイックインサイトヘッダーでは、各列に関する貴重な情報をすばやく確認できます。列のデータ型に応じて、クイックインサイトはデータの分布やデータポイントの頻度、欠損値や個別値を表示します。
-
データグリッドは、データセット全体を表示できるスクロール可能なペインです。
編集モードのインターフェース
編集モードに切り替えると、Data Wrangler で追加の機能とユーザーインターフェイス要素が有効になります。次のスクリーンショットでは、Data Wrangler を使用して、最後の列の欠損値をその列の中央値に置き換えています。
-
操作パネルでは、Data Wrangler の組み込みデータ操作をすべて検索できます。操作はカテゴリ別に整理されています。
-
クリーニング手順パネルには、以前に適用されたすべての操作のリストが表示されます。これにより、ユーザーは特定の操作を元に戻したり、最も最近の操作を編集したりできます。ステップを選択すると、データ差分ビューで変更が強調表示され、その操作に関連付けられた生成されたコードが表示されます。
-
エクスポートメニューを使用すると、コードを Jupyter Notebook にエクスポートしたり、データを新しいファイルにエクスポートしたりできます。
-
操作が選択され、データへの影響がプレビューされている場合、グリッドにはデータに加えた変更のデータ差分ビューがオーバーレイされます。
-
コードプレビューセクションには、操作が選択されたときに Data Wrangler が生成した Python および Pandas コードが表示されます。操作が選択されていない場合は空のままです。生成されたコードを編集すると、データグリッドでデータへの影響が強調表示されます。
Data Wrangler 操作
組み込みの Data Wrangler 操作は、操作パネルから選択できます。
次の表は、Data Wrangler の最初のリリースで現在サポートされている Data Wrangler 操作をリストしています。近い将来、さらに多くの操作を追加する予定です。
操作 | 説明 |
---|---|
並べ替え | 列を昇順または降順で並べ替える |
フィルター | 1 つ以上の条件に基づいて行をフィルター処理する |
テキスト長の計算 | テキスト列の各文字列値の長さと同じ値を持つ新しい列を作成する |
ワンホットエンコーディング | カテゴリカルデータを各カテゴリの新しい列に分割する |
マルチラベルバイナライザー | 区切り文字を使用してカテゴリカルデータを各カテゴリの新しい列に分割する |
数式から列を作成 | カスタム Python 数式を使用して列を作成する |
列の型を変更 | 列のデータ型を変更する |
列を削除 | 1 つ以上の列を削除する |
列を選択 | 残りを削除して、1 つ以上の列を選択して保持する |
列名を変更 | 1 つ以上の列の名前を変更する |
列を複製 | 1 つ以上の列のコピーを作成する |
欠損値を削除 | 欠損値を含む行を削除する |
重複行を削除 | 1 つ以上の列に重複する値があるすべての行を削除します |
欠損値を埋める | 欠損値を含むセルを新しい値で置き換える |
検索と置換 | 一致するパターンを持つセルを置換する |
列と集計でグループ化 | 列でグループ化して結果を集計する |
空白を削除 | テキストの先頭と末尾の空白を削除する |
テキストを分割 | ユーザー定義の区切り文字に基づいて列を複数の列に分割する |
最初の文字を大文字にする | 最初の文字を大文字に変換し、残りを小文字に変換する |
テキストを小文字に変換 | テキストを小文字に変換 |
テキストを大文字に変換 | テキストを大文字に変換 |
例による文字列変換 | 提供した例からパターンが検出された場合に、文字列変換を自動的に実行する |
例によるDateTimeフォーマット | 提供した例からパターンが検出された場合に、DateTimeフォーマットを自動的に実行する |
例による新しい列 | 提供された例からパターンが検出されたときに、列を自動的に作成します。 |
最小/最大値をスケール | 数値列を最小値と最大値の間でスケールする |
丸め | 指定された小数点以下の桁数に数値を丸める |
切り捨て (floor) | 数値を最も近い整数に切り捨てる |
切り上げ (ceiling) | 数値を最も近い整数に切り上げる |
カスタム操作 | 例と既存の列の導出に基づいて新しい列を自動的に作成する |
Data Wrangler でサポートしてほしい操作が不足している場合は、Data Wrangler GitHub リポジトリで機能リクエストを提出してください。
以前のステップを変更する
生成されたコードの各ステップは、クリーニング手順パネルから変更できます。まず、変更したいステップを選択します。次に、操作に変更を加えると(コードまたは操作パネルを介して)、データへの変更の影響がグリッドビューで強調表示されます。
コードの編集とエクスポート
Data Wranglerでのデータクリーニングステップが完了したら、Data Wranglerからクリーニングされたデータセットをエクスポートする方法は3つあります。
- コードをノートブックにエクスポートして終了: これは、生成したすべてのデータクリーニングコードをPython関数にパッケージ化して、Jupyter Notebookに新しいセルを作成します。
- データをファイルにエクスポート: これは、クリーンアップされたデータセットを新しいCSVまたはParquetファイルとしてマシンに保存します。
- コードをクリップボードにコピー: これは、データクリーニング操作のためにData Wranglerによって生成されたすべてのコードをコピーします。
列を検索
データセット内の特定の列を見つけるには、Data Wrangler ツールバーから列へ移動を選択し、該当する列を検索します。
トラブルシューティング
一般的なカーネル接続の問題
一般的な接続の問題については、接続の代替方法に関する上記の「Python カーネルへの接続」セクションを参照してください。ローカルの Python インタプリタ オプションに関連する問題をデバッグするには、Jupyter および Python 拡張機能の異なるバージョンをインストールする方法が考えられます。たとえば、安定版の拡張機能がインストールされている場合は、プレリリース版をインストールすることもできます (またはその逆も同様です)。
既にキャッシュされているカーネルをクリアするには、コマンド パレットから Data Wrangler: Clear cached runtime
コマンドを実行できます ⇧⌘P (Windows, Linux Ctrl+Shift+P)。
データファイルを開くと UnicodeDecodeError
が発生する
Data Wrangler から直接データ ファイルを開くときに UnicodeDecodeError
が発生する場合、これは次の 2 つのいずれかの問題が原因である可能性があります。
- 開こうとしているファイルのエンコーディングが
UTF-8
ではない - ファイルが破損しています。
このエラーを回避するには、データファイルから直接 Data Wrangler を開くのではなく、Jupyter Notebook から開く必要があります。Pandas を使用してファイルを読み込むには、Jupyter Notebook を使用します。たとえば、read_csv メソッドを使用します。read
メソッド内で、encoding
および/または encoding_errors
パラメーターを使用して、使用するエンコーディングまたはエンコーディングエラーの処理方法を定義します。このファイルに適したエンコーディングがわからない場合は、chardet などのライブラリを試して、動作するエンコーディングを推測することができます。
質問とフィードバック
問題が発生した場合、機能リクエストがある場合、またはその他のフィードバックがある場合は、GitHub リポジトリに Issue を提出してください: https://github.com/microsoft/vscode-data-wrangler/issues/new/choose
データとテレメトリ
Visual Studio Code 用の Microsoft Data Wrangler 拡張機能は、使用状況データを収集し、製品とサービスの改善に役立てるために Microsoft に送信します。詳細については、プライバシーに関する声明をお読みください。この拡張機能は、https://vscode.dokyumento.jp/docs/configure/telemetry で詳細を確認できる telemetry.telemetryLevel
設定を尊重します。