【完全初心者向け】独学でPython使いになる方法をまとめてみた

本記事では、以下のような初心者の方向けに、効率的にPythonを学習する方法を紹介しています。

  • Pythonをこれから学習しようとしている
  • 文系卒で数学に自信がない
  • あまり時間を避けないので効率的に学習したい
  • どうやって始めたら良いか分からない

Pythonを学習しようと決めているけど、なかなか始められなかったり、どうやって進めるのが良いか分からなかったりする方は多いのではないでしょうか。この記事に辿り着いたからには大丈夫です。あなたが効率よくPythonを学ぶために考えておくべきことを説明していきます。


あなたがどこで躓いているか診断!

色々なウェブサイトを見て「結局なにをどう学べば良いんだ!」と思っている方多いと思います。特にPythonについては、なにやら楽しそうな話題で世間は持ちきりです。

ほとんどの方は以下のどこかのフェーズで躓いていると思います。

  • フェーズ1
    目標を決める
    PythonでWebサイトを作る?データ分析?機械学習やAIを構築?それとも画像解析?
  • フェーズ2
    環境を整える
    手元にはPCがある?Pythonの実行環境は整ってる?各種ライブラリはインポート済み?
  • フェーズ3
    学ぶ方法を決める
    本から学ぶ?それとも動画学習?実践形式?あなたに合った学習スタイルは?
  • フェーズ4
    基礎学習〜簡単なプログラミング
    絶対に挫折しない方法って?最初はどうやってアウトプットするのが効率的?
  • フェーズ5
    自分で作る
    自分で作り切るコツは何だろう?諦めそうになった時はどうしたら良い?

目標を決める

Pythonに限らず、プログラミングを学習している方によくある躓き原因が「目標がない」です。そんなの当たり前と思うかもしれませんが、意外と目標がない人やなんとなくで進めている方ばかりです。

明確に3ヶ月後にこの企業でエンジニアとして働く!とか、受託で毎月5万円稼げるようになる!とか、明確な目的がある人の成長速度はとても早いです。もし今特に明確な目標がない方は、すぐに目標を設定しましょう。

この点、Pythonは凄く特殊だと思っています。それは、Webサイトも作れるし、データ解析にもよく使われるし、その延長線上に機械学習やAIといった昨今話題の仕組みも構築できるからです。そして、Pythonの基本的な所はもちろん同じですが、Webサイトを作るのと、機械学習をするのとでは学習すべき内容が大きく異なります。

MEMO
Pythonでなにをするのか決めること。ある種なんでもできるPythonだからこそ、意味のない学習にならないようにすることが大事。

あなたがPythonで何をやりたいのか決まっていないとブレブレで意味のない学習をしてしまうということです。大きく3つに分けてみましょう。


データ解析を学習したい

先に大事なことを言いますが、データ解析についての効率的な学習方法は、実践的に学習することです。

データサイエンティストという言葉が世の中で話題になってから、データ解析に興味を持つ人がたくさん増えました。もしあなたもデータについての理解を深めたかったり、データ解析をしてみたければ、NumpyやPandasといったデータ分析によく使われるデータ分析系ライブラリを学習することをオススメします。

DataFrame(データフレーム)入門:基本的な使い方を総まとめ!

NumpyやPandas自体はあまり面白みのないライブラリです。データ解析の醍醐味はやはり、データそのものあってこそですから、最初に述べた通り、実践的に実データを用いて学習することがベストです。

実データを用いておもちゃのようにデータをこねくり回すことが、最速で学習できる方法です。初心者にオススメなのが、タイタニックの生存者データや、米国不動産市場のデータです。

後述する動画学習サービスのUdemyの以下の講座がとてもわかりやすく解説しています。有料ですが購入する価値あるので、ぜひ一度ご覧ください!

参考 【世界で5万人が受講】実践 Python データサイエンスUdemy

機械学習とかAIを学習したい

最近特に多いのは、機械学習を触ってみたい!とかAIについて理解を深めたい!みたいなところではないでしょうか。Pythonが機械学習と共に一気に認知度を向上させたのは言うまでもありません。

ここではまとめて「機械学習」としますが、機械学習について理解を深める際には挫折しないように事前に機械学習の手順を理解しておくことをオススメします。

機械学習プロセスのほとんどは「データの前処理」になります。データを前処理して、いかに綺麗なデータにするかが重要なので、思ったのと違うという感想を抱く方が非常に多いです。

ただ、実際に想像している通り、最先端の技術を実装し、画像解析やテキスト解析をして、SNSのデータを分析してみたり、予測や分類システムを構築してみたり、と様々なことができるので、非常に面白い分野には間違いありません。

参考 アプリケーション開発者のための機械学習実践講座Udemy

Webサイトを作りたい

Webサイト作成ができるプログラミング言語のイメージは、PHPやRubyですが、PythonでもWebサイトを作成することができます。PythonでのWebサイトはフレームワークを使うことになります。ここでは代表的なフレームワークをさらっとご紹介します。

Django

ジャンゴと呼びます。Python製のフレームワークの中でももっとも有名で王道と言われています。Djangoでサイトを作っている企業も多く、Djangoコミュニティも結構大きいです。

参考 【3日でできる】はじめての Django 入門 ( Python 3 でウェブアプリを作って AWS EC2 で公開!)Udemy


Flask

フラスコと呼びます。Djangoに比べて軽量なフレームワークです。カスタマイズ性が高く、本当に必要な機能だけ欲しいという方にオススメです!

その他にもいくつか著名なフレームワークがありますので、比較した際の良さを今後紹介しますね。


環境を整える

Hello Worldを出力したら半分くらいは学習完了とよく言われます。それほどまでに環境を整える道のりは、めんどくさいです。しかし、そこまで難しいものでもないので、一つ一つクリアしていきましょう。

PCは手元にある?

持っていない方はすぐ買いましょう。自分はMacbookユーザーなので、Macbook Pro非常にオススメです。PCがないと何も始まりません!

Pythonの実行環境は整ってる?

環境構築は非常に厄介ですね。挫折ポイントの一つです。しかし、PythonにはAnaconda(アナコンダ)という統合環境があります。Anacondaをインストールしましょう!手順は以下の記事が参考になります。

参考 AnacondaでPythonの環境構築!概要~インストール方法まで解説Udemy メディア

ライブラリはインストール済み?

便利なライブラリが多いので、インストールしておきましょう。上記でAnacondaをインストールした方は、ほとんどインストール済みです。便利ですね!


学ぶ方法を決める

人によって、適する学習スタイルがあると思います。プログラミングもデータ分析も同じく、自分に合ったやり方で進めてみるのが良いと思います。

本から学ぶ

2017年頃から一気にPythonやデータ解析、機械学習系の書籍は増えましたね。大きめの本屋さんに行けば結構な量が置いてあると思います。また、電子書籍でも良いという方は、サクッと買ってデュアルディスプレイにして読みながら実装を進めるのが良いと思います。

ここでは、3つの本を紹介しておきます。

スラスラ読める Pythonふりがなプログラミング

Python超初心者の方にはこちらがおすすめです。エンジニアからすると、少し易しすぎる内容ですが、読み物としても読むことができるので、主婦の方やお子さんがいらっしゃる方でもスキマ時間にサクッと読める内容です。

エンジニアの方にはあまり合わないかもしれません。


仕事ではじめる機械学習

これから機械学習を始めようとする方や、仕事で使う可能性が出てきた方に非常におすすめの一冊です。あまり難しい理論や数式は出て来ず、機械学習をビジネスに取り入れるとはどうゆうことなのか、書かれています。もちろん実装する場面やサンプルコードも出て来るので、機械学習に興味がある方は必読の一冊です!


Pythonデータサイエンスハンドブック ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習

データ分析を学習したい方はこちらが網羅性高く、おすすめです!NumpyやPandas、Matplotlibに関してはブログ内でも解説記事出してるので、良ければそちらもどうぞ。


動画形式で学習する

こちらは以下の記事で詳しく解説していますので、ご覧ください!個人的には動画学習、非常におすすめです!

【決定版】最短でPythonを習得するためのオススメUdemyコース9選! Pythonの勉強に最適な無料のおすすめプログラミング学習サイト4選

実戦形式で学ぶ

一番良いのは実際の職場環境に入ることです。ただ、本業のある方や、そのような環境を今から探すのが難しかったりと色々理由があると思います。そんな方におすすめなのが、Kaggle(カグル)です。データ分析について学習を進めている方は一度は目にしたこともあるのではないでしょうか。

Kaggleとは企業や研究者がデータセットを投稿し、世界中のデータサイエンティストがその最適モデルを競い合うプラットフォームです。無料で誰でも登録することができ、様々なデータセットを元に精度を高める競争をすることができます。

参考 Kagglekaggle.com

Kaggleの詳しい始め方については、以下の記事がおすすめです。

参考 世界のデータサイエンティストが集う「Kaggle」とは?ビッグデータ分析を競い合え!seleck

基礎学習〜簡単なプログラミング

書籍や動画でインプットしたものをKaggleや実際の職場でアウトプットしていく形がベストに近いと思います。アウトプットがわかっている状態の人間の学習の吸収力は凄まじいので、どこでアウトプットを出すかを決めておくと良いと思います。

ここでは、Kaggleすら少し難しいと感じた方や基本的な所からアウトプットしたい!という方にのみおすすめの学習方法を紹介します。

それは、写経です。

写経とは、書籍や動画で紹介されたサンプルコードを見てそのまま自分で書いてみることです。写経は基礎中の基礎でもっとも有効な手段です。実際に手を動かす中で、まずは抵抗感を無くなります。さらに、だんだんと「自分はコードを書ける」という自信が湧いて来て、たとえ分からない所が出て来ても検索して調べて解決する心の体制がつきます。

まずはサンプルコードを写経しましょう。当ブログでも、様々な記事の中でサンプルコードが載っているので、ぜひ写経してみてください!


自分で作る

最後は自分で作ってみると、意外と自分が理解していない点や馴染んでいない部分が分かるので、自分で何か簡単なものでも作成することが大切だと思います。

ポイントは、組み合わせることです。複数の技術を合わせて使うことで理解が深まりますし、より実践的な学習に近づきます。

  • お気に入りのサイトをスクレイピングして、そのデータをテキスト解析してみる
  • 利用可能な公開データセットを使って、分析してみる
  • Kaggleで一位取るまでひたすらやってみる
  • 自分のツイートをAPIで収集して、そのデータで反応の良かったツイートの傾向を調査する

まとめ

今回は、初心者のためのPython学習の入門方法についてまとめました。本記事通り進めれば、挫折せずに自分の思い描く方向へ進めることと思います。

覚えておきたいポイント
  • Pythonで何をしたいか明確にする
  • 環境構築はいち早く済ませる
  • 自分にあった学習スタイルを見つける
  • 写経は最強
  • 技術の組み合わせでオリジナルのものを作る
【入門】matplotlib.pyplotの読み込みをしてみよう DataFrame(データフレーム)入門:基本的な使い方を総まとめ!