「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」と入力すれば、次のように候補が出てきます。
![](https://self-development.info/wp-content/uploads/2023/06/image-51.png)
「Install」ボタンをクリックすれば、普通はそれでインストール完了です。
しかし、Noteableはここからが少し異なります。
二段階認証が必要となっています。
![](https://self-development.info/wp-content/uploads/2023/06/image-52.png)
「Enable two-factor authentication」ボタンをクリックします。
そうすると、まずはChatGPTの認証画面が表示されます。
![](https://self-development.info/wp-content/uploads/2023/06/image-53.png)
メールアドレスを入力して、「Continue」ボタンをクリック。
パスワードの確認画面に切り替わります。
![](https://self-development.info/wp-content/uploads/2023/06/image-54.png)
パスワードを入力します。
認証に成功すると、次のような画面が表示されます。
2段階目の認証ということですね。
(本来であれば、QRコードには個人情報が含まれます)
![](https://self-development.info/wp-content/uploads/2023/06/image.jpg)
説明文には、次のように書かれています。
お好きな認証アプリで下記のQRコードを読み取り、下記のワンタイムコードを入力してください。
お好きな認証アプリとは、次のようなスマホアプリのことです。
- Microsoft Authenticator
- Google Authenticator
これらは、2段階認証用のアプリです。
QRコードの読み込み機能が備わっています。
その機能を使って、上記のQRコードを読み込みます。
読み込みに成功すると、ワンタイムパスワードコードが表示されます。
有効期限内に、そのコードを上記画面で入力します。
「Enter your one-time code」にコードを入力して、「continue」ボタンをクリック。
認証に成功すると、ChatGPTにログインした状態になります。
再度、プラグインを検索して「Install」ボタンをクリックします。
![](https://self-development.info/wp-content/uploads/2023/06/image-55.png)
今度は、Noteableのログインページに遷移します。
なかなかインストールが、終わりませんね。
![](https://self-development.info/wp-content/uploads/2023/06/e8f2b139aebfa7f4ba66da1df63b6563.jpg)
私の場合は、「Continue with Google」を選択しました。
そうすると、ChatGPTに戻りました。
![](https://self-development.info/wp-content/uploads/2023/06/image-56.png)
Noteableが、インストールされた状態となっています。
メールアドレスを選択したら、また異なった遷移になるかもしれません。
これで、Noteableのインストールが完了しました。
このように複雑な処理になっているのは、ChatGPTとNoteableを連携させるためなのでしょう。
以上、Noteableのインストールを説明しました。
次は、Noteableの動作確認を説明します。
Noteableの動作確認
Noteableの動作確認を行います。
まずは、Noteableが有効であることを確認します。
![](https://self-development.info/wp-content/uploads/2023/06/image-57.png)
そして、読み込むデータを用意します。
データを用意する方法には、いろいろとあります。
ここでは、ファイルのURLをNoteableに渡すことで対応します。
今回は、オープンデータとして公開されているCSVを利用します。
データは、次のページで公開されています。
CSVのパスは、次のURLとなります。
![](https://self-development.info/wp-content/uploads/2023/06/image-58.png)
したがって、次のようにプロンプトを入力します。
![](https://self-development.info/wp-content/themes/cocoon-master/images/man.png)
次の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
そうすると、次のような結果となります。
![](https://self-development.info/wp-content/uploads/2023/06/image-59.png)
この処理のスゴイところは、エラーを自ら修正しているところです。
読み込んだデータの最初の5件が、確認の意味で表示されています。
確かに、最初の5件は同じデータです。
![](https://self-development.info/wp-content/uploads/2023/06/image-60.png)
一応、件数も確認しておきましょう。
ChatGPTに次のようにプロンプトを入力します。
![](https://self-development.info/wp-content/themes/cocoon-master/images/man.png)
読み込んだCSVのレコード件数は、全部で何件ですか?
ChatGPTがNoteableに問い合わせた結果、次のように結果が表示されています。
![](https://self-development.info/wp-content/uploads/2023/06/image-61.png)
レコード件数も問題ありません。
Noteableは、正確にCSVを読み込めていると言えます。
「Used Noteable」をクリックすると、ChatGPTとNoteable間のやり取りを確認できます。
![](https://self-development.info/wp-content/uploads/2023/06/d9aae1d7846878671702e998d6064cf5.jpg)
Noteableからの返答に「cell_link」というURLがあります。
このURLにアクセスすると、Noteableのページが開きます。
![](https://self-development.info/wp-content/uploads/2023/06/790d044de796ceae7cdbd79ac41de80f.jpg)
Pythonコードの実行や読み込みデータの保存は、Noteable上で行われていることが確認できます。
レコード総数の「216」という値も確認できますね。
では、ChatGPTに戻ります。
データ分析という以上は、もう少し高度なことを試してみましょう。
![](https://self-development.info/wp-content/themes/cocoon-master/images/man.png)
各年で集約した世帯数を表示してください。
このプロンプトに対して、次のように表示されます。
![](https://self-development.info/wp-content/uploads/2023/06/image-62.png)
確認はしていませんが、正しそうな数字です。
金沢市は、世帯数が増加傾向であると言えますね。
次は、もっとややこしい注文をしてみましょう。
![](https://self-development.info/wp-content/themes/cocoon-master/images/man.png)
各校区における2005年から2020年までの世帯数の増減率を表示してください。
Noteableは、難なく回答してきます。
![](https://self-development.info/wp-content/uploads/2023/06/image-63.png)
この結果をベースに、次のように指示します。
![](https://self-development.info/wp-content/themes/cocoon-master/images/man.png)
最も増えた校区と最も減った校区を教えてください。
結果があるので、すぐに返答が戻ってきます。
![](https://self-development.info/wp-content/uploads/2023/06/image-64.png)
なるほどですね。
と言っても、私は金沢に縁も所縁もありません。
そのため、結果を見てもイマイチ実感はないですけどね。
こんな感じで、Noteableを使うとChatGPT上でデータ分析が可能になります。
Pythonのコードは一切何も触っていません。
すべて文章で指示しただけです。
スゴイとしか言いようがありません。
以上、Noteableの動作確認を説明しました。