はじめに
2025/9/14 に行われた「VS Code Dev Days Tokyo」に参加した際に話を聞いて、その後、イベントに参加されていた @ ymd65536 さんが以下のブログ記事も書かれていた「GitHub Copilot でデータサイエンス」という話に関する記事です。
上記の記事の話
上記の ymd65536 さんのブログ記事は以下になります。
●メモ:【GitHub Copilot】データサイエンスのためのGitHub Copilot - 404ニキのBlog@hatena
https://ymd65536.hatenablog.com/entry/2025/09/14/150756
この記事を見ると、関連する GitHubリポジトリ・VS Code用拡張機能の URL が紹介されていて、以下のお試しをした結果も紹介されていました。
記事の情報を抜粋1: 公式リポジトリの情報
上記の ymd65536 さんのブログ記事の一部を、さらに抜粋して見てみます。
上記のキャプチャ画像内の記載では、以下のリポジトリが紹介されています。
●microsoft/github-copilot-for-data-science: Apply useful GitHub Copilot workflows and patterns in Data Science
https://github.com/microsoft/github-copilot-for-data-science
記事の情報を抜粋2: 公式ページ・拡張機能のページの情報
そして、以下の部分も見てみます。
どうやら、下記の関連する公式ページ・拡張機能があるようです。
●Getting Started with Data Wrangler in VS Code
https://code.visualstudio.com/docs/datascience/data-wrangler
●Data Wrangler - Visual Studio Marketplace
https://marketplace.visualstudio.com/items?itemName=ms-toolsai.datawrangler
とりあえず試してみる
いろいろ説明を見ていきたいところでもありますが、とりあえず拡張機能を入れて触ってみようと思います。
拡張機能のページ
以下、VS Code側でインストールを完了した後の画面です。
必要な環境
拡張機能のページ内の説明を見ると、3.8以上の Python が必要になるようです。
使い方など
使い方として、Jupyter Notebook から使う方法と、エクスプローラー上のファイルのリストの右クリックメニューから呼び出す方法があるようでした。
2つ目のエクスプローラー上から呼び出すほうは、例えば .csv が対象にできるという記載があります。
それと画面の表示内容について、以下のように説明がされている部分もありました。
データ自体を表示する部分以外に、サマリーやデータの分布を出してくれるところなど、いくつかの表示エリアが組み合わさったものになるようです。
とりあえず、適当な CSVファイルで動作確認をやってみます。
お試し用の CSVデータ
CSVデータを使ったお試しをやってみようと思います。
何のデータを使おうかと思ったのですが、とりあえず有名どころの「Iris」のデータセットで試すことにしました(※ タイタニックのデータとかと並んで、よく見かけるやつ)。それについて、例えば以下だと CSVファイルのものがダウンロードできそうです。
●Iris Species
https://www.kaggle.com/datasets/uciml/iris
ダウンロードしたデータは、以下のように VS Code のエクスプローラーで開いた状態にしました。
「Data Wrangler」で CSVファイルを開く
拡張機能のページに書かれていた、エクスプローラー上から開く方法を使ってみます。CSVファイルの上で右クリックメニューを出すと、以下のように「Data Wrangler で開く」というものがあるので、これを選びます。
以下のような画面がでてきました。
Jupyter の拡張機能のインストール
自分の環境だと、右下に以下のように Jupyter の拡張機能を入れるようにと出たので、拡張機能を追加でインストールしました。
ランタイムとの接続
その後、画面内でランタイムに接続するようメッセージが出ていました。
接続ボタンを押すと、画面上部に以下のような表示が出ます。ローカルの環境を使うか、クラウド上の環境につなぐかという感じですが、自分はローカルの環境を使うものを選びました。
その後、ローカルに複数ある Python のどれを使うか選択する画面が出てきました。とりあえず、3.8以上であれば良いという話があったので、どれを選んでも良いですが、3.13.5 を選びました。
ちなみに、複数の Python の選択肢が出てきているのは、以下の記事にも書いた mise での Python のバージョン管理で、複数バージョンの Python を入れているためと思われます。
●mise(ミーズ、旧rtx)で Node.js・Python のバージョンを管理する【Mac での利用】 - Qiita
https://qiita.com/youtoy/items/f53494806013f0d3f51e
ipykernel・依存関係のインストール
その後、以下が表示されたので、ipykernel をインストールしました。
さらに以下の依存関係のインストールというのも出たので、これもインストールしました。
「Data Wrangler」上での表示
依存関係のインストールが完了した後は、以下のように「Data Wrangler」を使えるようになりました。
画面左を見るとデータの概要を出してくれています。
また、上部を見るとデータの分布のヒストグラムを出してくれていたりするようです。
「Data Wrangler」でデータの処理
それでは、Data Wrangler を使ったデータの処理を試します。
用いるプロンプト
とりあえずの思いつきで
「Length・Widthの4つの列に対して、元の列を残しつつ、平均0 分散1となるようにデータをスケーリングした列をそれぞれ追加して」
というスケーリングを試してもらうことにしました。
生成された Python のコードと実行エラー
生成された Python のコードは、以下のとおりです。
# Scale SepalLengthCm, SepalWidthCm, PetalLengthCm, PetalWidthCm to mean 0, variance 1
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
scaled_columns = ['SepalLengthCm', 'SepalWidthCm', 'PetalLengthCm', 'PetalWidthCm']
scaled_data = scaler.fit_transform(df[scaled_columns])
# Add scaled columns back to the DataFrame
for i, col in enumerate(scaled_columns):
df[f'{col}_scaled'] = scaled_data[:, i]
これを、以下の「Run code」ボタンで実行します。
そうすると、以下のようにコードの実行失敗という結果になりました。
失敗した原因は scikit-learn がないためで、scikit-learn をインストールするよう促されました。
scikit-learn を追加して再度処理を実行
scikit-learn をインストールして、再度処理を実行してみました。そうすると、以下のようにデータが追加されています(※ 以下は全体が表示されるよう、表示をかなり縮小しています)。
追加された部分をキャプチャしたものは以下で、どんなデータが追加されるのかをプレビューで見られます。
その後、以下の「適用」ボタンを押して、データ追加を反映させます。
CSVファイルとして結果を保存
この状態だと結果がファイルになってなさそうなので、CSVファイルとして結果を保存します。
画面上部の「ファイルとしてエクスポート」というボタンを押します。その後、保存形式で「CSV」を選び、ファイル保存先とファイル名を指定します。
そのようにして保存した結果を、Excel で開いてみました。
その結果、上記のようにスケーリングされた値の列が 4つ、追加されていることが VS Code の外でも確認できました。