レポート)Pythonとデータ分析で中級者になるためのセミナ
こんにちは。Pythonエンジニア育成推進協会の吉政でございます。昨年末に表記のセミナーを実施しました。当協会としては初めてのハイブリッド開催で、申込数は130名になり、大変盛況にて終了できました。当協会の狙いとしては、その年にPython試験やデータ分析試験に合格された方が、中級車になるためのノウハウや知見を共有し、実際の仕事に活用できる一助ができたらという思いで開催しました。
当日はかなりたくさんの質問もいただき活発なセミナーになりました。
当日の質問事項に対して顧問理事の寺田氏に回答を作成いただきましたので、ここで共有いたします。人事部の皆様のPython教育の参考になれば幸いです。
■初学者が抱える悩み
Q. 学習をするうえでのとっかかりや、何をしたらよいか迷っています。また、実務につながるイメージが付きません。
なにか作りたいものや、便利にしたいことはありませんか?例えば、Excelの表を自動生成するとか、データ分析をしてみるとか。自身がこれを便利にしてみたいというモチベーションから何かを見つけて、自動化でもWebでもデータ分析でもなんでも良いので何かを作って見るところから始めると良いと思います。
特に、RPAのような自動化に取り組むのはどうでしょうか?
普段からExcelなどで計算してるものがあれば、それをpandasに置き換えて、自動化してみるのもいいかもしれません。
Pythonは汎用的な言語なので、多くのことが実現できます。その反面、何をしたら良いのかわからないということが発生すると思います。
スクリプトレベルのアプリケーションを作って見るところからやってみることをお勧めします。
もし、データ分析で実力を付けたいのであれば、Kaggleのデータを使って実装したり、Kaggleで他の実装を見てみるのも勉強になると思います。
その経験を元に、自身でアクセス可能なデータ(例えば、万歩計の集計やヘルスデータなど、他には気象データは公開されています)をグラフ化するなど、分析していくと面白いと思います。
Q.学習のモチベーションの維持や目標設定が難しいと感じています。
自動化など、一つずつ挑戦できる部分を増やしていくのが良いかと思います。
できることが増えると、それを繋げて大きなアプリケーションが作れます。
まずは、できることを増やしていく、作りたいものに向かっていくのが良いかと思います。
他には、AIなどがこれだけ騒がれているので、LLMなどの生成系AIの勉強をするのはどうでしょうか?
LangChainを使えば、さまざまなLLMを試せますし、ChatGPT APIも使えます。この世界はこれからだと思うので先取りと思って自己学習するのはどうでしょうか?
Q.レベルの合う書籍を見つけるのが難しいのですがどうしたら良いでしょうか?
書籍やドキュメントは無数にあり、すべてを知ることは出来ませんので、自分にあった適切なレベルの書籍を見つけるのは非常に難しいです。
学習方法もさまざまなのですが、大きな本屋で、じっくりと時間を掛けて見ていくのは良いかと思います。または、レビューしているサイトや知人にお勧めを聞けると良いかなって思います。
Q.自由にインターネットに接続できる環境がありません。Pythonは使えますか?
ネットワーク無しで、Pythonのライブラリをどうインストールするかという問題は乗り越える必要はありますが、インストールさえできれば、ネットワークが無くても、コーディングができます。
Pythonでコーディングできるようになると、DXや自動化、RPAに繋がっていきます。
これらをモチベーションに、自身でできることを増やしていくのが良いかと思います。
Q.一緒にPythonを学ぶ仲間が欲しいのですが、どうすれば増やせますか?
一緒に勉強したり、相談できる仲間を作るのは非常に難しいことだと思います。しかし、仲間ができると学ぶ意欲の継続ができ、相談できることで学習が進みます。
まずは、近くでやっているPythonのコミュニティに参加してみましょう。多くのコミュニティは新しい仲間を求めています。参加して自分に合わないと感じたなら、別のコミュニティを探せば良いですし、楽しかったら何度も参加しましょう。そのうち、お互いに顔と名前を覚えていくことができれば、より楽しくコミュニティに参加できるはずです。
できれば、顔を合わせやすい近隣でやっているコミュニティに参加するのが良いと思いますが、近隣で見つからないということならオンラインで参加できるコミュニティに参加してみてはいかがでしょうか。
■IDE/ライブラリに関連した質問
Q. 環境整備やIDE(エディタ)に、おすすめはありますか?
VS CodeやPyCharmなどのIDEをお勧めしています。
特にこだわりが無いのであれば、無料で使えるVS Codeが良いと思います。私自身もVS Codeメインで使っています。
VS Codeはプラグインが豊富で、Pythonのサポートも充実しています。さらにJupyter notebookのPythonファイル(ipynbファイル)も直接編集することができます。
特に困っていないのであれば、VS Codeを使い続けていいと思います。
Q.pandasなどのライブラリの使い方が難しいと感じていますが、何か解決策はありますか?
pandasは、Rのデータフレームを元にしているので、Pythonの言語仕様や考え方と違う部分があります。
pandasは1つのツールとして成り立っている大きなライブラリなので、pandasに慣れていくしかありません。
他のライブラリについても同様のことが言えますが、ライブラリで何ができるのか、そのライブラリを使うメリットが感じられるなら、積極的に使えるライブラリを増やしていくのも、Pythonの活用に繋がっていくと思います。
まずは、1つずつライブラリの使い方を覚えるしか無いと思います。
Q.インストールなどでつまずいたりしますがどうしたら良いでしょうか?
インストールなどの環境構築は一つの難しい分野です。コンピュータを使う上では避けて通れない部分です。
環境構築で止まってしまうと、プログラミングの楽しさに到達できないので、Google Colaboratoryなど出来上がった環境で学習するのも良いかと思います。”
■Pythonを使う時のコツに関連した質問
Q.データを綺麗にするコツがあれば教えてください。
データを綺麗にするのは、本当に大変なことです。メソッドや関数を覚えて行くしか無いです。
最初はこれらの機能を知るのが難しいので、知っている道具(例えば、for文とか)で置き換えて、愚直に処理を書くことから始めるのをお勧めします。
愚直だとしても、コードが書けたなら、今度はそのコードをより良くするにはどうするかを考えます。
より良いメソッドや関数がないかを調べて使えるようになると次からはより良いコードが書きやすくなっていくと思います。
Q.書いたコードやスクリプトが動かなくなることがあり、メンテが大変です。どうしたら良いでしょうか?
プログラムを安定的に動かすのは大変なことです。イレギュラーなデータが入力されたり、周辺の状況が変わってしまうことで動作しなくなることは仕方ないことだと思います。
メンテナンスしやすいコーディングをすることや、コメントやドキュメントを残すこともお薦めです。
それでも、動作しなくなった時に時間が必要なのは事実です。一緒にメンテナンスできる人を増やすなど、今あるコードを一緒に読みながら、説明しつつ、一緒に学習していくのはいかがでしょうか?”
Q.GISやOCRの実装をやってみたいけどどうすればいいですか?
GISやOCRは、さまざまなライブラリが存在し、Pythonで扱えるものが多くあります。たくさんあるライブラリを試しながら、ネット検索などで評判を見ながら、実際に手を動かしてコーディングして試しながら、できることを増やすのが良いかと思います。
GISならpandasを拡張するGeoPandas から始めるのはどうでしょうか?
OCRならTesseract や、Googleなどのサービスを利用する方法もあります。
ちなみに当日の参加者の参加者層はまさに中級者を目指す方や中級者として仕事をするうえで再確認をされたい方々が集まった会になったと思っています。
各登壇の評価も大変良く、学びのある会だったと思っています。また懇親会の評価も高く、盛り上がった会になりました。大手企業在籍の方も多く、1名で参加されていた方が多かったようですが、個々に闊達に情報交換をされていたようで、意義のある会になったと思っています。やはりオンサイト開催は良いですね。今年も開催したいと考えていますので、興味がある方は是非ご参加ください。
追伸:お陰様で累計受験者数が5万人に達しました。受験いただいた皆様、支えていただいた皆様、ありがとうございました!
- 資格取得
年間登壇約20回、連載数15本以上、顧問先14社を持つマーケッター。著書「ITエンジニア向け企画力と企画書の教科書」大手企業の職級査定審査員
日本を代表する大手企業を中心にマーケティング支援を実施。日本のIT業界の発展のためには教育が重要であると考え、LinuxやXML、PHP、Ruby on Rails、Python、IPv6の検定試験を立ち上げ、運営組織の代表を歴任する。
吉政忠志(ヨシマサタダシ) 一般社団法人Pythonエンジニア育成推進協会 代表理事
対応エリア | 全国 |
---|---|
所在地 | 江東区 |