EDINET(金融庁が公開している有価証券報告書などの電子開示閲覧サイト)から有価証券報告書の情報の一部を各社分まとめて使いたい、というニーズがずっとありました。やりたいことに近いことをやっている方が公開しているPythonのプログラムをコピー→エラーが出たところをCopilotに直してもらい→ちょっと変えたい・追加したいところも依頼したら、なんとプログラムを全部書いてくれて(しかも秒で。。。)、欲しいファイルができました!
そして、ファイルに落としてからのちょっとした加工作業もVBAでCopilotが書いてくれました。ITに強い優秀なアシスタントを得たようです。GenAIのすごさと、プログラムとか(結局)書けない私でもやりたいことができた嬉しさに、とても衝撃を受けています😲!
やりたかったことと参考にさせてもらったプログラム
有価証券報告書のうち、一部のテキストデータのセクションだけ、全社的に情報を集めたかったのです。EDINETのデータを使って似たようなテキスト情報のアウトプット作業をプログラミングして公開されているありがたいサイトがありました。私が欲しかったのはこのうち1項目でしたが、参考にできそう!ということで使わせていただきました。
EDINETから有価証券報告書をCSVファイル形式で取得し、テキストデータを抽出する(API version2対応)
Pythonの入門講座
結果としてCopilot頼みでなんとかなったので、ではなんのトレーニングも要らなかったかというと、やはりやっていることを(少しは)理解するには、PythonやAPI(なるもの。Application Programming Interfaceの略)利用の講座は受けておく必要があったと思います。
私は、昨年夏頃に受けたこちらの入門講座「独学で身につけるPython〜基礎編〜【業務効率化・自動化で残業を無くそう!】」に加え、
APIを使うことを目的に、追加でこちら「Pythonによるビジネスに役立つデータ収集入門(Webスクレイピング・Web API・ChatGPT API編)」も受講してみました。

いずれも入門者向けにポイントを押さえていて、画面共有で大変わかりやすい講座だったと思います。ただ、私が使いたかったEDINETというのは、こちらのAPI講座で使っている政府統計のe-Statのデータよりかなり使い勝手が悪い模様。
そもそも少しトレーニングを受けたからといって、すぐ忘れちゃうし、自分で一からプログラムを作るのは無謀すぎる。そこでプログラムを公開してくれている方を頼ります。EDINETの情報をAPIを使って利用するためのプログラムを公開してくれている方は居るのですが、作業環境や、やりたいことが少しでも異なると、エラーになったり、素人には調整できなかったり😂。
PCのPython環境が一度壊れてしまった(?)こともあり、またPythonで挫折しそうに。しばらく寝かしていたPythonですが、最近調べ物を始めたので、やっぱりこの作業ができるようにならねば、と数ヶ月ぶりに重い腰を上げてJupyterLabを起動したのでした。
例えば、Copilotの教え・・・
人様の書かれたコードをベースにとりかかります。もう最初の保存ディレクトリを自分用に指定するところからエラーが出て、意味わからん。以前に少し作業したとき頼りになったCopilotに聞いたところ(どう書けばよいですか?の「どう」が抜けているけれど、察してくれた😅)、

↓のように、直し方の選択肢いくつかと、だめだった理由を教えてくれる。どうやら元のプログラムはWindowsではなくGoogle Colabというのを使う前提で書かれているらしく、他にも私の環境では通じない(?)ところがありました。


いや、そういうのあるの?自分だったら、永遠にわからなかったよ😓。こんな感じに何も確信が無いまま会話が始まったのですが、
- 「じゃあ全体をWindows用に書き換えてくれる?」
- 「まとめファイルではコードでなくて会社名を表示したいのだけど、どうずればよい?」
- (私が作業を足したため)「重複作業がある感じだけれど整理してもらえる?」
みたいにお願いしていくと、なんと最後にはすっきりとしたコードで、思ったように欲しい情報をまとめたCSVファイルが作成されたのです。おお!しかも、それぞれの書き直しはもう「秒」単位で修正してくれるし、ここではこういう作業をやっているという注釈もつけてくれて・・・。すごすぎる😱。
当然VBA(Visual Basic for Applications)もいけた
そして、今回の成果物であるCSVファイルに保存した中身は、そのセクション全体のテキストデータなので、だらだらと長い。そのうち、特定の用語を含む一文だけを抜き出したいなと思って、「ファイル上でどうすればよい?」と聞いたら、「VBA書けますよ。」「VBAってそもそもどこから操作するんだっけ?💦」「やっぱもう一文追加したい」・・・などなど、また初心者的な会話を続けるとVBAも書いてくれて、思った通り作動。
こういうの、私は「機能があるのは知っているけど使えない人」なので諦めていたんだけど、なんか希望が持てました。もちろん、Pythonについては、人が書いてくれているプログラムがベースにあったから自分が理解できていなくてもなんとかなったわけで、またやりたいことがちょっとでも変わると苦悶するのは容易に想像がつきます😓。
しかし、プログラミングでも、分析でも、AIに変わっていくであろうことは実感。今回、期間指定が長すぎて、ダウンロードに何時間かかかってしまったのだけれど、私が寝ている間も不平も言わずダウンロードしてくれていたし、疲れ知らずで偉い(ある意味ちょっと怖い)のよ😮。


コメント