python独学のつづきです。先日さらに購入した書籍「Pythonで儲かるAIをつくる」で勉強中です。これまで「Python for MBA Pythonとデータ分析を実践的に身につける」を使って2カ月かけてPython学習したところ。独学なので自分がどこまでできるようになったのかがいまいちピンときません。
機械学習はユーチューブでも少しみてきたので、今回購入した「Pythonで儲かるAIをつくる」の前半までは読むだけでなんとなく頭の中でイメージできました。実際に面白そうな4章のタイタニックの生存データを機械学習できたらいいなあ、と思って入力した1行目でさっそく以下のエラーがでました。(考えが甘かった!)この本を進めるうえで、どの環境設定でいくのか大事な部分だと思いますので、忘れないうちに記録しておきます。
私がはじめた操作環境は、jupyter notebookでした。結果から言いますと、これはLinuxコマンドなので、jupyter notebookではなく「Google Colaboratory」か「Ubuntu」といった仮想環境なら実行するのを前提に著者はこの本を書いていました。以下、エラーが起きてこの結論になるまでの経緯です。
入力
!pip install japanize-matplotlib | tail -n 1
エラー
tail' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
ぐぐると、どうやらパスが通ってないようです。
PATH環境変数を変更する必要があるかもしれません。
もしくは、仮想環境のプラットフォーム用のLinuxコマンドをウィンドウズで実行するには、jupyter notebookではできないのかしら?
まずは、パスの確認。
そもそも今のVerのPythonとjupyter notebookを知らないので、マンドプロンプトから確認してみます。
まずは、Pythonのヴァージョン確認
コマンドプロンプトの入力
Python –version
結果
Python 3.9.7
次に、pipのヴァージョン確認(つい先日アップグレードした気がする)
入力
PIP –version
結果
pip 21.3.1 from C:\Users\USER\AppData\Local\Programs\Python\Python39\lib\site-packages\pip (python 3.9)
ヴァージョンとパスも表示してくれました。助かります。
なんだか、大丈夫な気がします。次の確認。仮想環境のプラットフォーム用のLinuxコマンドをウィンドウズで実行するには、jupyter notebookではできないのか?こちらをさらに調べてみました。
すると、LinuxコマンドはWin11だとふつうに使えるようです。Win11にしたくなりました。ですが今日のうちに「Pythonで儲かるAIをつくる」のこの4章を実際に自分でもやってみたいので、どうにかしたいところ。Win10だと「Ubuntu」というターミナルをダウンロードすると使えるみたい。さっそくマイクロソフトのストアに行ってみます。
「Ubuntu」を検索。
やっぱり、著者の使っているGoogle Colabと似てるクラウドでやり取りするものなんですね。今後、リアルタイムのデータを分析したいので、できればPC内でやりたいのですが。。ただ気になったのは、「Ubuntu」は日本語でも良いようです。jupyter noteだと日本語対応の処理をしたり、気づかずに日本語データがあるとエラーが起きるので、そういった面では良いかもしれません。
ここまで来て「japanize-matplotlib」というものが何なのか、よく知らないので調べることにしました。
jupyter notebookはグラフ作成すると文字化けするので、日本語のグラフを表示しやすいというデメリットがあるまります。これを解決するには書式設定を事前に設定してあげれば良いですね。
(これも今度やってみたい内容。 参考:https://qiita.com/knknkn1162/items/be87cba14e38e2c0f656)
今後はそれで解決するとして、今回のやりたいことは書籍「Pythonで儲かるAIをつくる」4章を実際に実行してみることの方が優先順位が高いです。そんなわけで、jupyter notebookではなくGoogle Colaboratoryの方でやってみます。
そういうわけでGoogle Colaboratoryにしたところ、さくさん進みました。赤石先生が「github」というサイトでコードを公開してくれているので、読んでコピペして実行していきました。
今回学習した4章では、特に数値項目と非通知項目のグラフ表示です。
「Python for MBA Pythonとデータ分析を実践的に身につける」のやり方で実際に株データを分析しようとした際によくあったのは、データ型がflot型でint型じゃなかったり逆だったり、その都度どうやって分類したらいいんだろうと悩んだところでした。列ごとにデータ変換した方がいいのか、じゃそれはどの段階で修正しようかとか。
赤石先生の場合、まずは数値のみでグラフを作り、そのあと0か1、TrueかFolse、名称のカウントでグラフ化してました。そしてグラフ化にループ処理を使っているのも勉強になりました。
実際にやりたいデータでやってみると新たな壁にぶつかるのですが、それはその時に調べたり試行錯誤して解決することもあれば、以外と別の書籍で学習中にあ、こんな解決策があったんだと見つけたり。
プログラミングは特定の人だけの書籍より、もしかしたら色んな人の書籍を読むと結果的に知識が深まるのかもしれないなと思った今日です。
で、このままコピペして勉強した気になってせっかく覚えたことを使ってみないと忘れちゃいますし、実際にここから株データで同じことを再現してみようと思います!
第二ラウンド開始!