【chatGPT×Noteable】ノースキルでデータ分析できる時代に突入!?AIにテキスト指示だけで分析させてみた。
皆さん、今話題のchatGPTを使いデータ分析ができるということをご存知でしょうか?これまでは、ExcelやSQL、Pythonなどを使い分析業務を行っていた方がほとんどかと思いますが、chatGPTにテキストで分析指示を出すだけで自動で分析結果を返してくれる、そんな時代が到来したのです。
今回の記事では、Excelもプログラミング言語も一切使わず、ECの売上を上げるための分析をchatGPTを使い行ってみました。
目次
データ活用のお悩み KUROCOにご相談ください
今回の分析で明らかにしたいこととその背景
ECの受注管理システムからDLしたデータと、顧客マスタデータをかけあわせて、売上アップに向けた示唆を出したい。でも、高度なExcelのスキルは持っていない、ましてやPythonなどのプログラミングスキルなんてもちろん無いから困っている…そこで、AIでできないかな?
ということで、chatGPTとそのプラグインであるNoteableを使って、ノーコードで売上アップに繋がるデータ分析ができるか検証してみたというのが今回のストーリー
実際に画面に沿って手を動かしながら分析してみよう!
今回の記事内で使用するデータは以下のフォームよりダウンロードできます。(必要事項をご入力頂き送信頂くと、自動返信メールよりファイルをお送りいたします)
https://form.k3r.jp/cm_consulting/chatGPT_noteable_sampledate
実際に手を動かしながら読むと、より深く記事の内容を理解できるはずなので、ぜひデータをダウンロードして一緒に分析していきましょう!
まずはchatGPTとNoteableについての説明
・chatGPTとは?
今話題のchatGPT。この記事にたどり着いたITリテラシーの高い方なら細かく解説する必要はないと思いますので、だいぶ端折りますが、、、
chatGPTは人工知能(AI)の一種で、自然な言葉を理解して返答することができるプログラムです。チャット欄にこちらから指示または会話をすると、その答えを返してくれるというプログラムになります。
・Noteableとは?
Noteableとは、データ分析を簡単に行うためのツールです。クラウドベースのWebサービスとして提供されています。Noteableを使うことで、データ分析やプログラミングの作業を効率的に行えるうえに、他の人とコードや分析結果を簡単に共有することもできます。
・chatGPT × Noteableのメリット
chatGPTは言語処理に優れている反面、データの処理などは苦手としてきました。また、 Noteableについても、使いこなすためにはPythonなどのプログラミング言語とデータ分析の知識が必要でした。
しかし、この両者をかけ合わせることで、言語による命令の処理をchatGPTが、裏側のデータ処理や分析をNoteableが行ってくれるという、夢のコラボが実現できるのです。
改めて今回の企画の趣旨を説明すると、このchatGPT × Noteableを使い、ExcelもPythonも使わず、テキストだけで売上拡大に繋がる分析結果を出せるのかを試す企画です。
検証で使用するデータの確認
今回はECビジネスにおけるデータ分析を行います。
使うデータは2種類。まず1つ目は、受注データです。こちらは受注管理システムから書き出すことができるCSVデータを想定して以下のようなテストデータを作成いたしました。
2つ目は、顧客マスタデータです。顧客マスタは購入した顧客の情報がまとまっているデータで、生年月日や住所、属性などが記録されています。以下のようなデータを今回は使用します。
いよいよ検証スタート!
ここからは実際にchatGPTとNoteableをつかって分析を進めます。
・まずは、chatGPTとNoteableの下準備から
なにはともあれまずはchatGPTにNoteableを導入します。プラグインはchatGPTの有料プランでないと導入ができませんのでご注意ください。
<chatGPTを有料プランに切り替える方法>
左カラムの下のアイコン横にメニューバーがあるのでクリック。
そうすると、メニューが出現し、「Upgrade to plus」という表示があると思いますので、更にそれをクリックします。(私のアカウントは既に有料プランですので表示されません。)
あとはそのまま出現するポップアップの手順に従い、支払いを行うと有料プランへの切り替えが完了。
<Noteable(プラグイン)をインストールする方法>
では続いて、Noteableをインストールします。(私は既にインストールされてしまっているので、Noteableが見えている状態ですので、そこは気にせずで大丈夫です)
有料アカウントのchatGPTにログインした状態で、「GPT-4」を選択します。その後、そのすぐ下にある「No plugins enable」という表記の箇所をクリック。最後に、「Plugin store」をクリックします。
表示されるPlugin storeの検索窓に「Noteable」と検索し、Installを実行しましょう。
<NoteableのWeb版でアカウントを作成>
最後にNotealeのWeb版にアクセスしてアカウントを作成しましょう。これまでの手順では、chatGPTにプラグインをインストールしただけです。実際のデータ処理を行う場所はNoteable内で行いますので、そのアカウントの作成を行うということになります。
まずは、Googleの検索画面で「Noteable」と検索します。すると、おそらく画像の表記のようなサイトタイトルが表示されますのでクリックします。
サイトに遷移したら、「Get Start」というボタンがありますのでクリックします。
ログイン方法の選択画面が表示されますが、ここで注意が必要です。
chatGPTのログイン情報と、Noteableのアカウントの情報は紐づいている必要がありますので、chatGPTのアカウントと同じ情報でログインをします。
私の場合はchatGPTもGoolgeアカウントで作成しておりますので、Noteableも同じGoogleアカウントで作成を行います。
ちなみに、chatGPTとNoteableを別々のアカウントで作成してしまった場合、、、
上記のように、今後データ処理を行う際に、アクセス権限がありませんと表示されてしまいますので注意が必要です。
無事ログインでき、上記のような画面になれば準備完了です。
ここまでで、chatGPTとNoteableを使ってデータ分析を行う為の下準備が完了しました。では、ここからは実際にこれらを使いながら分析を行ってみましょう。
・Noteableに処理を行うプロジェクトファイルを作成し、chatGPTに読み込ませます
これからchatGPTに命令を送って自動で分析を行ってもらうのですが、その処理を行うスペースを作成して読み込ませます。
再びNoteableのWebサイトに戻りログインされた状態で、「Create」をクリックします。そこから表示されるメニューから「Project」を選択します。
表示されるポップアップに必要な情報を記入していきます。
「Project Name」はプロジェクトの名前ですので分かりやすいものを記入します。
「Space」は基本的には今ログインしている状態のスペースが表示されるので変更しません。
「Project Description」はこのプロジェクトのメモ書きです。あとで見返した時にいつ、どういった目的で使っていたプロジェクトかが分かるようにします。
情報を記入し終わったら、「Create」ボタンをクリックします。
すると画面が遷移します。まずは作成したプロジェクトになっていることを確認します。
その後、表示されている画面のURLをそのままコピーします。
次にchatGPTに戻ります。GPT-4を選択、「No plugins enabled」をクリックし、Noteableの横の四角にチェックを入れます。
その後、chatGPTのメッセージ送信欄に、画像の指示と先程コピーしたNoteableのプロジェクトURLを貼り付けます。
「〜プロジェクトとして設定しました。」と表示されれば読み込み完了です!
この後のデータ処理は全て読み込んだプロジェクト内で行われます。
・分析に使うデータを読み込ませる
作業場所のスペースは確保できたので、次は分析に使用するデータを読み込ませましょう。
まずは、Noteableに前の章で紹介した、①受注データ ②顧客マスタデータをアップロードします。
Noteableの作成したプロジェクト内に入り、「Upload」のボタンをクリックします。
画像のようなポップアップが表示されますので、project名があっていることを確認し、使用する2つのファイルをドラッグアンドドロップでインポートします。
無事にインポート完了しました。インポートしたデータが間違えていなければ、斜め上のHideボタンを押して閉じましょう。
続いて、それぞれのデータをchatGPTに読み込ませます。
まずは受注データ(db_注文明細_デモ用.csv)からいきましょう。
該当のファイル名をクリックします。
読み込みに少し時間がかかりますが、このような画面に切り替わるはずです。そうしましたら、この画面のURLをコピーします。
次にchatGPTにコピーしたURLを貼り付け画像のような指示を送信します。
「プロジェクト内にある次のURLのデータを読み込んでください。 URL〜」
今回使用するデータはどうやら重すぎたようでしたが、代わりにPythonを使って読み込みますと別の対応策を出してくれました。
(もし、代わりの対応策の提案がなかった場合は、こちらから「Pythonのpandasライブラリを使ってCSVファイルを読み込んで下さい」と指示を出せばOKです)
いくつかエラーがあったようですが、無事にデータの読み込みが完了いたしました。
今回は日本語が含まれるファイルだったためエラーが発生したようですね。文字コードを変えて読み込んでくれました。
このように、エラーがおきても基本的にはchatGPT側が次の対応策を提案してくれます。
一応、読み込んだデータと基のデータが合っているか確認をしましょう。今回は問題なく合っていました。
この要領で、次は顧客マスタデータ(db_顧客マスタ_デモ用.csv)を読み込ませましょう。
作業内容は先程と全く同じなので省略します。
今回はエラーなく読み込みが完了いたしました。
やはり文字コードのエラーが原因だったのですね。もし、データに日本語が含まれる場合は先に文字コードを「cp932」を使うように指示を出した方が良さそうですね。(または、データを全て英語に変換する)
データも合っていそうですね。
以上で、分析に使用するデータの読み込みは完了いたしました。
次は読み込んだデータを使って分析をしてみたいと思います。
・chatGPTに指示を出して分析スタート
chatGPTはフワッとした指示が苦手です。なので、いきなり「売上を上げるために何をすればよいか分析をして」と送っても間違えた示唆やトンチンカンな答えが返ってきます。
会話と分析を進めながら、お互いに現状を深掘りしつつ分析を進めて行きます。
まずは一番売れている商品を分析してみる
まずは手始めに、どの商品が一番売れているのか(売上を上げているのか)を分析してみましょう。
基データを確認してみます。すると、売上合計の列が無いことが分かりました。
売上合計は「商品価格(税別)」×「個数」で算出ができますね。
これを、新しい列に追加してもらいましょう。chatGPTに指示を出します。
上の画像のような指示を出します。
問題なく列の追加が行われました。値も合っていそうです。
これで、基準となる売上の算出ができたので、次は売上を基準にどの商品が一番売れているのかを確認しましょう。
このように返答がきました。表示する内容が多いと、Noteableの方を直接見て下さいとなるので、上位10を表示してもらうように指示を出してみます。
売上合計順に、商品名が並べ替えられました。
この結果から「★商品1940★」が一番売上を上げていることが分かりますね。
ちなみに、指示があったNoteableのリンクをクリックすると以下のような処理が行われていました。
このように、chatGPT側でテキスト指示を出した内容が、Noteable側で自動でコードを書いて分析してくれているようです。
商品ごとの売上の割合を分析してみる
商品毎に偏りがあるのか調べるため、各商品の全体の売上に占める割合も出して見ましょう。
画像のように、各商品の売上÷全体の売上を計算して表示する指示を出します。
こちらが出力結果です。この数字から、何か1つの商品において売れているのではなく、まんべんなく売れていることが分かりますね。
メインターゲットを洗い出してみる
では次に、顧客マスタデータも活用して、どの年代の、どの性別の人がもっとも多く売上を上げているのか(メインターゲットになるのか)を分析してみましょう。
まずは基のデータを見て、どのように指示を出そうか考えてみましょう。
2つのデータを見比べてみると、受注データと顧客マスタデータに「会員ID」という共通のKeyがありました。これを使って分析ができそうですね。
まずは受注データから、会員IDごとの売上合計を算出し、そこから顧客マスターデータの性別と照らし合わせて、男性と女性どちらの売上が大きいか調べる指示をします。
今回はこのような指示を出しました。
こちらが結果になります。
圧倒的に女性の方が売上が大きいことが分かりました。
つまり、このECサイトのメインターゲットは「女性」になりそうですね。
次に、どの年代の人が売上が高いか調べたいと思います。
顧客マスタデータを確認すると、年齢の列がありませんでした。
ですので、誕生日から年齢を出し、そこから売上が高い年代を出してもらいましょう。
このような指示を出しました。
一度、売上合計を使って受注データと顧客マスタデータの合算の計算をしているので、細かく指示を出さなくてOKです。
誕生日のセルに値が無いところがあったためエラーが表示されましたが、自動で処理対応してくれました。
こちらが算出結果です。
これを見ると、年配の方の売上が高いことが分かりますね。
年代別で見てみましょう。
画像の指示のような年代で再度計算を指示してみました。
このような結果が返ってきました。
やはり、年代が高い方の売上が大きいことが分かります。
・分析結果まとめ
以上の結果から、以下のような分析示唆を得ることができました。
- 最も売れている商品は「★商品1940★」
- 特定の商品が売れているわけではなく、まんべんなく売れている
- メインターゲットは50-60代の女性
深掘りしていくとキリがないので一旦分析を終えましたが、このように指示を出していけば更に売上アップの示唆に繋がる分析ができそうです。
計算結果が合っているか検証してみました
念のため、ExcelでchatGPT側で算出した計算結果が正しいかどうかを検証してみました。
chatGPTに指示を出した順に検算を行い、画面左側がchatGPT側の結果、右側がExcelでの計算結果になります。
(商品ごとの売上ランキング:合っている)
(商品ごとの売上割合:合っている)
(性別ごとの売上比較:合っている)
(年齢ごとの売上ランキング:合っている)
(年代ごとの売上比較:合っている)
お見事!全部Excelでの計算と一致しました。
まとめ
今回、chatGPT × Noteableを使い、ノースキルでも売上拡大に向けたデータ分析とその示唆だしを行うことができるのかを検証いたしました。
結果として、chatGPTに指示を出すだけで、素早くかつ正確に分析結果を出すことができました。
また、実際使ってみて感じたことは、テンポが良いということ。Excel分析をしていると、よい示唆を出すためにはテンポが大事だったりします。「これやってみるとどうなるだろう?」のような疑問はすぐ湧いてきますが、それを計算するためのやり方が分からず、ネットで調べながらやっているとテンポが悪くなってしまいます。結果、分析する作業だけで疲れてしまい、肝心の示唆出しのところでエネルギー切れになることも(例えば、生年月日から年齢を出す関数や、何代を出す関数とかは、調べ無いとでてこなかったりします)。
しかし、今回の検証では、計算の仕方を思考することはもちろん必要ですが、実際の計算自体は自動で全部やってくれるので、「次はこういう計算してみようかな」と余裕がある状態で分析を進めることができました。
もちろん、今回行った分析内容は初歩的な内容でしたが、それでも十分実務で使える印象を受けました。
今度はもう少し難易度の高い分析も実験してみたいと思います。
最後までお読み頂きありがとうございました!
\ データ活用のお悩み KUROCOにご相談ください! /