【ChatGPTプラグイン】Noteableによるデータ分析

【ChatGPTプラグイン】Noteableによるデータ分析 ChatGPT

「ChatGPTでCSVなどのファイルを分析したい」
「Pythonのコードを書かずに複雑なデータ分析を行いたい」

本記事の内容

  • Noteableとは?
  • Noteableのインストール
  • Noteableの動作確認

それでは、上記に沿って解説していきます。

Noteableとは?

Noteableとは、データ分析とコードの共有を容易にするためのJupyterノートブック環境です。
クラウドベースのWebサービスとして提供されています。

機能としては、以下が挙げられます。

  • Jupyterノートブック
  • プロジェクト管理
  • データソース接続
  • コードの実行と共有
  • セキュリティとプライバシー

ざっくり言うと、NoteableはJupyterLabに近いです。

JupyterLabを使いやすくして、セキュリティのレベル高めたモノと言えるかもしれません。
このNoteableが、ChatGPTのプラグインとして公開されています。

このプラグインを有効にすることで、ChatGPT上でデータ分析が可能です。
本来、Noteableを使いこなすにはPythonやデータ分析の知識が必要となっています。

しかし、ChatGPTを間に入れることにより、それらの知識が必須ではなくなったのです。
極論、機械学習の知識が無くてもChatGPT上で機械学習が可能と言えます。

個人的には、Noteableのプラグイン(以下ではNoteableと呼ぶ)は機械学習における革命だと感じています。
おそらく、Noteableによって機械学習が一気に普及すると思います。

以上、Noteableについて説明しました。
次は、Noteableのインストールを説明します。

Noteableのインストール

インストールの詳細は、次の記事を参考にしてください。
プラグイン名が異なるだけで、基本的には同じ要領で対応できます。

現時点では、プラグイン検索が可能になっています。
「Noteable」と入力すれば、次のように候補が出てきます。

「Install」ボタンをクリックすれば、普通はそれでインストール完了です。
しかし、Noteableはここからが少し異なります。

二段階認証が必要となっています。

「Enable two-factor authentication」ボタンをクリックします。
そうすると、まずはChatGPTの認証画面が表示されます。

メールアドレスを入力して、「Continue」ボタンをクリック。
パスワードの確認画面に切り替わります。

パスワードを入力します。
認証に成功すると、次のような画面が表示されます。

2段階目の認証ということですね。
(本来であれば、QRコードには個人情報が含まれます)

説明文には、次のように書かれています。

お好きな認証アプリで下記のQRコードを読み取り、下記のワンタイムコードを入力してください。

お好きな認証アプリとは、次のようなスマホアプリのことです。

  • Microsoft Authenticator
  • Google Authenticator

これらは、2段階認証用のアプリです。
QRコードの読み込み機能が備わっています。

その機能を使って、上記のQRコードを読み込みます。
読み込みに成功すると、ワンタイムパスワードコードが表示されます。

有効期限内に、そのコードを上記画面で入力します。
「Enter your one-time code」にコードを入力して、「continue」ボタンをクリック。

認証に成功すると、ChatGPTにログインした状態になります。
再度、プラグインを検索して「Install」ボタンをクリックします。

今度は、Noteableのログインページに遷移します。
なかなかインストールが、終わりませんね。

私の場合は、「Continue with Google」を選択しました。
そうすると、ChatGPTに戻りました。

Noteableが、インストールされた状態となっています。
メールアドレスを選択したら、また異なった遷移になるかもしれません。

これで、Noteableのインストールが完了しました。
このように複雑な処理になっているのは、ChatGPTとNoteableを連携させるためなのでしょう。

以上、Noteableのインストールを説明しました。
次は、Noteableの動作確認を説明します。

Noteableの動作確認

Noteableの動作確認を行います。
まずは、Noteableが有効であることを確認します。

そして、読み込むデータを用意します。
データを用意する方法には、いろいろとあります。

ここでは、ファイルのURLをNoteableに渡すことで対応します。
今回は、オープンデータとして公開されているCSVを利用します。

データは、次のページで公開されています。

金沢市 国勢調査データ - 2005-2020_02世帯数.csv - 金沢市オープンデータポータル

CSVのパスは、次のURLとなります。

したがって、次のようにプロンプトを入力します。

次のCSVを読み込んでください。
https://catalog-data.city.kanazawa.ishikawa.jp/dataset/70b0c2e9-e849-4bbb-8c23-eb3c8e2fdeb9/resource/fd44f76f-3e75-41a0-a529-11b2602f9c82/download/172014-2005-2015_02setaisuu.csv

そうすると、次のような結果となります。

この処理のスゴイところは、エラーを自ら修正しているところです。
読み込んだデータの最初の5件が、確認の意味で表示されています。

確かに、最初の5件は同じデータです。

一応、件数も確認しておきましょう。
ChatGPTに次のようにプロンプトを入力します。

読み込んだCSVのレコード件数は、全部で何件ですか?

ChatGPTがNoteableに問い合わせた結果、次のように結果が表示されています。

レコード件数も問題ありません。
Noteableは、正確にCSVを読み込めていると言えます。

「Used Noteable」をクリックすると、ChatGPTとNoteable間のやり取りを確認できます。

Noteableからの返答に「cell_link」というURLがあります。
このURLにアクセスすると、Noteableのページが開きます。

Pythonコードの実行や読み込みデータの保存は、Noteable上で行われていることが確認できます。
レコード総数の「216」という値も確認できますね。

では、ChatGPTに戻ります。
データ分析という以上は、もう少し高度なことを試してみましょう。

各年で集約した世帯数を表示してください。

このプロンプトに対して、次のように表示されます。

確認はしていませんが、正しそうな数字です。
金沢市は、世帯数が増加傾向であると言えますね。

次は、もっとややこしい注文をしてみましょう。

各校区における2005年から2020年までの世帯数の増減率を表示してください。

Noteableは、難なく回答してきます。

この結果をベースに、次のように指示します。

最も増えた校区と最も減った校区を教えてください。

結果があるので、すぐに返答が戻ってきます。

なるほどですね。
と言っても、私は金沢に縁も所縁もありません。
そのため、結果を見てもイマイチ実感はないですけどね。

こんな感じで、Noteableを使うとChatGPT上でデータ分析が可能になります。
Pythonのコードは一切何も触っていません。

すべて文章で指示しただけです。
スゴイとしか言いようがありません。

以上、Noteableの動作確認を説明しました。

タイトルとURLをコピーしました