初心者のプログラミング取り組み方

はじめましてDATUMSTUDIOの後藤です。 今回テーマとして取り上げるトピックは、「初心者のプログラミング取り組み方」です!最近、本屋さんではプログラミング関連の本が大々的に取り上げられています。仕事の場面でも「次のプロジェクトはPythonスキルが必須だ!」、「日々の雑務をプログラミングで自動化したい!」といったシーンがあるでしょう。 しかし、プログラミング未経験であれば「でも、何から取り組めばいいのか・・・」このような悩みがありませんか? 今回の記事は、同様の悩みを持った私が実践して効果があったと思える勉強方法を記載します。また、Pythonというプログラミング言語をテーマに記事を作成しますが、取り組み方自体は他の言語にも通ずる内容となっておりますので、Pythonに限らず、是非実践してみましょう! さて、それでは本題に入ります。

超入門〜写経編〜

突然ですが、“写経”という言葉をご存知でしょうか。ここでいう写経は“仏教の経典を書写すこと”ではありません。参考書などに掲載されているサンプルコードを、自分で書いてみることです。まずは、理解よりも練習量ということでサンプルを沢山書いてみましょう!写経しながら少しずつコードの意味が理解出来るようになります。 実際のところ、私も写経を通して初めて理解したことが多くあります。読むだけでは理解できなかった部分が、コードの実行結果を確認することで自分の中で理解が深まり、使いこなせるようになってきます。そして、少しずつ自分なりにサンプルコードをアレンジして、自分が想定した結果が得られているのか確認をしてみましょう。

超入門〜エディタ編〜

先程サンプルコードをひたすら写経しましょうと記載しました。それでは、どのようなツールで取り組むべきでしょうか。Pythonには、おすすめツールとしてJupyter Notebookがあります。このツールがおすすめの点はコードの実行結果を、ひとつひとつ確認できる点にあります。 丁度こちらのツール導入に関して、弊社の過去ブログで簡潔にまとめられています。環境構築に関してはこちらを参照しください。 Jupyter Notebookを利用してお手軽分析環境構築 下の例はJupyter Notebookで簡単な足し算とリスト内表記を実践した結果になります。 足し算 ・リスト内表記 このように実行結果がすぐに確認できるため、自分の意図した処理が実行されたのか都度確認ができます。

基本を理解したら〜コード実践編〜

さあ、これまで入門書を写経し、Jupyter Notebookを使ってコードを書いてきました。いよいよ実際のデータを扱ってみましょう! 実践の良い場としてkaggleというデータ分析コンペのサイトがあります。こちらでは世界中のデータ分析者がコンペに参加し、分析スキルを競っています。こちらのコンペをオススメする最大の理由は、世界中の分析者が実行したコードが残っている点です。 このように世界中の人たちが実践した内容を投稿しています。実践した言語ごとに絞り込むことも可能なため、以下の例ではPythonに絞って一覧を表示しています。 それでは何故、世界中の分析者が取り組んだ結果が残っていることが良いのでしょうか。これも実は写経と考え方が同じなのです。今までサンプルコードで覚えた内容を具体的にどう使うのか、覚えた事をどのように組み合わせれば良いのか、先人たちがコードとして残してくれています。 更に、彼らが使ったデータと全く同じデータに対して同じような処理を加えることで、データがどのように変化したのか確認することができます。 例えば、簡単な例にはなりますが、以下の処理をどのように書きますか? 「データフレームirisのカラム”Species” の値が“Iris-setosa”であるカラム‘“SepalLengthCm”を抽出したい」 こんなコードになるのではないでしょうか。

コードが2行になり長くなりましたね。更に1回変数を作成しているため、コードがややこしくなりましたね。しかし、先程の処理が更に短く簡単にかけてしまうのです!

たった一行で書いていますが、これも処理結果は同じです。 確かに覚えたことを自分なりに使っても同じ処理はできますが、このように様々な人達のコードを見ると、更に効率的で簡潔なコードを発見することができるのです。

まとめ

本日はここまでとなります。最後にポイントをまとめます。 覚えていただきたい3つのポイント

  1. サンプルコードをひたすら写経する
  2. Jupyter Notebookを使ってコーディング&実行結果を確認
  3. kaggleで先人たちの実行内容を真似してみる

これからプログラミングを始めようと思っていても何を取り組むべきか迷われている方は、この3つを実践してみてはいかがでしょうか。 よく武道や茶道の世界でも「守破離」という言葉が用いられます。今回の内容もサンプルコードや先人たちのコードを真似する点では、「守」の“型を守る”という点が共通しているのではないでしょうか。自分なりに書く前に入門書のお手本、先人たちのお手本を真似しながら、理解を深めていきましょう!

このページをシェアする: