最終更新日:2021/06/17
Pythonでのデータ分析が学べるおすすめ学習サービス
【第1位】Aidemy(公式:https://aidemy.net/
日本の大企業のDXで利用されている、高品質なPythonスクール。こちらも給付金が使えるPython・データ分析・機械学習特化型。
【第2位】TechAcademy(公式:https://techacademy.jp/
価格を抑えて、教養としてAI・Pythonを学びたいなら!統計学の基礎からPythonのライブラリ使ってデータ分析の手法を習得できます。知名度抜群の総合型プログラミングスクール。
【第3位】CodeCamp(公式:https://codecamp.jp/
価格を抑えながらスクレイピングなどPythonでのデータ収集・業務自動化を学びたいなら!同じく知名度抜群の総合型プログラミングスクール。

「Pythonでデータ分析する方法は?何を勉強すればいいの?Pythonでデータ分析するメリットは?」

DAI
この記事では、初心者でもわかるようにPythonを用いたデータ分析の方法やメリット、Pythonでデータ分析をする上で何を学べばいいか?などについて解説していきます。

実際、この記事を読んでいるあなたは、「毎日業務で、一つずつExcelにデータを打ち込んでめんどくさい」「もっと簡単にデータを取ってきて可視化・分析したい!」と考えているのではないでしょうか?

Pythonはデータの収集からモデル化まで一貫して対応しており、初学者でも比較的書きやすいので、「ちょっとビジネスでデータ分析してみたい!」というときに重宝されます。

DAI
結論、データ分析する流れは、①課題の設定→②データの収集→③データの前処理→④データの可視化→⑤モデル化(機械学習の場合)となります。一つ一つの手順の詳細や学習方法、未経験から独学でデータサイエンティストになれるのか?ということに関しては本編で解説しましたので、ぜひお付き合いください!

Pythonでデータ分析する流れ

データ分析の流れとして、

  • 答えを出したい問い、課題の設定
  • データの収集
  • データの前処理
  • データの可視化
  • 機械学習の場合、モデル化

となっています。これらの流れは、行ったりきたりします。データの可視化をした結果、データの前処理がさらに必要になったり、モデリングした結果、さらにデータの前処理が必要になる可能性があるからです。

①答えの出したい問い、課題の設定

ある分析を行う際に、どういう結果が得られればいいのか定義します。例えば、

  • この二つの広告のうち、どちらがよりクリックされやすいか、商品申し込みまでつながりやすいか
  • もっとも商品申し込みに貢献しているWebページはどれなのか

などです。

個人的には、「答えを出すことによってビジネス成果が生まれるもの」を課題として設定するのがよいと思います。

例えば、以下のようなことを検証したとしても、次の行動に落とし込めません。

  • NG: 気温が上がると、アイスクリームの売上が伸びるのか →仮にそうだったとしても、気温を上げることができないので意味がない

一方で、最初に挙げた二つのような問に答えられると、次のアクションの根拠とすることができます。「これが分かったらこのアクションが取れる」という仮説をもとに、課題設定することが重要です。

  • OK: この二つの広告のうち、どちらがよりクリックされやすいか、商品申し込みまでつながりやすいか → よりビジネス効果の高い広告を利用することで、より多くの申込を得られる
  • OK: もっとも商品申し込みに貢献しているWebページはどれなのか→そのページに似たようなページを作成する、そのページに内部リンクを多く流す構造にすることでより多くの申込みを得られる

この辺のリサーチデザインに関して、参考になる書籍をいくつかまとめておきます。リサーチデザインについては、いろいろな事例に触れながら、どういうことができるのかを多く把握しておくことが重要です。

②データの収集

次に、上記の課題を解決するために、データを収集します。データを収集する方法は、おおざっぱに分けると以下のようになっています。

  • オープンデータの統計を利用する
  • 社内DBのデータを抽出する
  • Webスクレイピング、Web APIを利用してデータを収集する

オープンデータの統計を利用する

一番簡単なのは、オープンソースは、公的統計を利用する方法です。オープンデータとは、公的機関などが二次分析のために公開しているデータセットとなります。

個人的に分析しがいがあるオープンデータをまとめておきます。

  • PISA: OECD加入諸国が実施している学習到達度調査のデータセットです。
  • e-stat:e-Statは、日本の統計が閲覧できる政府統計ポータルサイトです
  • Kaggle: データ分析のコンペサイトです。

オープンデータの分析の例としては、教育社会学者の舞田先生の分析が非常に面白いので、ぜひ参考にしてみてください。

また、Kaggleもオープンデータを分析するプラットフォームです。チュートリアルとなっているカーネルを参考にすると、面白いかと思います。英語が読める方はぜひ参考にしてみてください。

社内DBのデータを抽出する

DBのデータを取得する場合は、SQLや、PythonのSQLラッパーを利用してデータを収集することになります。

SQLの基礎は、Progateで学べるのでぜひ勉強してみてください。

Web API、スクレイピングでデータを収集する

外部Webサイト、ツールからデータを取得する場合、Web APIやWebスクレイピングを利用します。

Web APIとは

Web APIとは、アプリケーションが外部連携するためのデータの窓口のことです。例えば、Twitter, Instagramなど以下のようなAPIがあります。

  • Twitter REST API
  • Instagram Graph API
  • Google Search Console API
  • Slack APIs
  • Chatwork API
  • LINE Messaging API
DAI
Web APIを提供しているサービスなのであれば、Web APIを経由してデータを収集するのがよいでしょう。

実際にWeb APIからデータを取得できるチュートリアルもManajobのPythonコースで学習できます。

Webスクレイピングとは

Web スクレイピングとは、Web上のHTMLのデータを自動収集できる技術のことです。

DAI
PythonでWebスクレイピングを行えば、指定したファイルや画像などを自動で収集できるようになるので、かなり業務効率化することができるんですよね。

Web APIと同様に、以前スクレイピングの方法についてもチュートリアルで作成したので、参考にしてみてください!

③データの前処理

データを収集しても、そのまま利用できるわけではありません。分析の用途に沿った形で、データを加工してあげる必要があります。データの前処理には、以下のようなものがあります。

  • 欠損値の取り扱い
  • カテゴリカルデータを連続データに変換

欠損値の扱い

例えば、データセットの中で欠損値が存在する場合があります。こういう場合、データ分析を行う際に大きく全体の結果をゆがめる可能性があるので、

  • 欠損値をそのまま削除する
  • 平均、中央値、最頻値を代入する
  • 重回帰分析を利用して、代入する

などの方法をとる場合があります。
Kaggleのタイタニック号の死亡率予測コンペを例にします。乗員客船の搭乗港のカテゴリカルデータ(C, Q, Sの欠損値を、最頻値(mode)で置換しているコードです。ソースコードは下記チュートリアルから引用します。

freq_port = train_df.Embarked.dropna().mode()[0] # 欠損値を削除し、その中で搭乗港コードの最頻値を出力

≫'S'

for dataset in combine:
dataset['Embarked'] = dataset['Embarked'].fillna(freq_port) #欠損値に最頻値を代入

train_df[['Embarked', 'Survived']].groupby(['Embarked'], as_index=False).mean().sort_values(by='Survived', ascending=False)

欠損値、最頻値、中央値、平均、仮説検定、p値等の用語がわからない場合は、統計学の基礎を勉強するのがおすすめです。統計学も、機械学習ではなく、純粋な高校数学レベルの統計学ですね。

カテゴリカルデータから連続データに変換

カテゴリカルデータ(文字列)を統計解析が可能なように連続データに変換します。
Pythonを利用すると、搭乗港のコードを、定量的なデータに前処理することが簡単にできます。

for dataset in combine:
dataset['Embarked'] = dataset['Embarked'].map( {'S': 0, 'C': 1, 'Q': 2} ).astype(int)
train_df.head()

Pythonでデータの前処理をする際におすすめの勉強方法

Pythonでデータの前処理を学ぶ場合は、以下の書籍を参考にするとよいでしょう。

また、Kaggleのカーネルを写経しながら学ぶのもおすすめです。

④データの可視化

Pythonでデータの可視化を行う場合は、以下のモジュールを利用できるようになるとよいでしょう。

  • Matplotlib: Pythonで一番メジャーなグラフ描画ツール
  • Pandas: データの前処理モジュール。一部Matplotlibの機能が利用できる
  • Seaborn: Matplotlibのラッパーライブラリ

個人的にはPythonでグラフ描画をするのは、データの前処理を行う際に簡易的にデータを眺める程度で使うのがいいと思うのですが、レポーティングにはちょっと耐えられないかな…という印象です。ですので、Seabornを利用してきれいなグラフを作るなら、CSVにエクスポートしてBIツールに投げ込んだり、Excelのグラフなどでレポーティングしたほうがいいのではないかな?と思っています。

MatplotlibやSeabornを利用して、グラフ描画を行いたい!という方は、以下の書籍がおすすめです。

⑤機械学習の場合、モデル化

データの前処理が終わり、機械学習やディープラーニングを利用できる状態になったら、最後にモデル化を行います。

前述のタイタニック号の分析の場合は、タイタニック号の生存に寄与した変数を、さまざまな統計モデルを利用して、精度を検証します。例えば、

  • ロジスティック回帰分析
  • サポートベクターマシン
  • 決定木

個人的には、機械学習をビジネスにどう応用するかを学ぶ際には、以下の書籍が非常にわかりやすかったです。

Pythonでデータ分析するメリット

Pythonでデータ分析するメリットは以下の点となります。

  • データの収集→前処理→可視化→モデル化までに対応している
  • 大規模データ(csv1000行以上)のデータの前処理がしやすい
  • 初学者にも比較的書きやすい

エクセルだけで完結させようとすると、データの収集がかなりしんどいです。VBAでもできなくはないのですが、ちょっと重いかもしれません。また、前処理もエクセルだけで利用しようとすると、関数だらけになりめちゃくちゃ重くなります。また、かゆいところに手が届かないですね。

また、ほかのプログラミング言語(特にR)と比較すると、初学者でもかなり理解しやすいので、ちょっとビジネスでデータ分析してみたい!くらいのレベル感であれば、Pythonはおすすめできます。

Pythonでデータ分析するデメリット

Pythonでデータ分析するデメリットは、以下2点です。

  • Pythonを覚える学習コストが大きい
  • グラフのレポーティングがつらい

やはり、簡単なデータのグラフ化や、ピボットテーブルを利用して統計解析したいくらいのレベル感であれば、Google SpreadSheetやExcelを利用した方が早いです。コードを書かずにポチポチするだけで簡単にできるので、それくらいのことであればPythonをゼロから勉強する学習コストのほうが大きくなってしまいます。

また、最終的なレポーティングに利用するようなグラフは、Pythonだとちょっとしんどいかなっというのが印象です。CSV出力した後に、だいたいExcelでレポーティングしているのですが、レポーティングをPythonで凝ってつくるのは費用対効果がかなり悪いと個人的には思います。

CSV1000行未満で、データの収集もしないで、簡単なレポーティングをしたいぐらいの集計作業であれば、Pythonは向かないので、むしろExcelを使えるようになったほうがよいかと思っています。Excelで簡単なデータ分析を行う方法は、こちらの本がかなりわかりやすかったのでおすすめです。

Pythonでデータ分析すべきシチュエーション

メリット・デメリットから考えて、Pythonを利用したほうがよいケースとしては、

  • 1000行以上のcsvでデータの前処理をvlockupなどの関数を多用しないといけない。そうすると重すぎて作業できない
  • Web API、スクレイピングなどを通して、データの収集から分析までノンストップでやりたい場合

こんな場合はPythonがパワフルかと思っています。

一方で

  • データ行数が1000行以内
  • プログラミングの学習コストがでかい

などを考えると、ExcelやGoogle Spreadsheetで十分なのではないかと思います。

未経験からPythonでのデータ分析を仕事にできる?

DAI
ここまで、データ分析の手法や流れについて解説してきましたが、未経験から本格的にPythonでのデータ分析を仕事にすることは可能なのでしょうか?
DAI
結論、未経験からPythonを独学で学んで、データサイエティストや機械学習エンジニアを目指すのは、正直結構厳しいです。

なぜかというと、これらの職種は、普通のエンジニアと違って、プログラミングの技術+統計学や微積や線形代数などの数学の素養・機械学習の知識などが求められるので、かなり難易度が高いんですよ。

具体的には、一から勉強するとなると、

  • 学ぶことが多いので、自分で学習ステップを立てていくのが困難
  • 専門性が高いので、プロからのFBなしでは、かなり理解するのが難しい

以上のようになり、相当ハード、というかほぼ無理ゲーなんですね。

こういったデータサイエンティストや機械学習エンジニアとかの類は、まずサーバーサイドエンジニアになってから、そこから勉強して転職というパターンがほとんどです。

将来的にデータサイエンスや機械学習の領域に転職したり、業務で活かしたい場合

ただ、「将来的にデータサイエンスや機械学習の領域に転職したい!」「マーケターの業務でプログラミングを習得・スキルアップして市場価値を高めたい!」という場合であれば可能です。

DAI
その場合は、Python特化型のスクールに通うことをおすすめします。

前述した通り、通常、データ分析領域は学習するのが難しい分野ですが、スクールに通うことで以下のメリットがあり、学習しやすくなります。

  • 体系的にPythonに特化してプログラミングから数学や統計学の知識を学ぶこと可能
  • 現役のデータサイエンティストや機械学習エンジニアに質問できたり、フィードバックがもらえる
  • スクールだからこそ、業界に詳しいカウンセラーやエンジニアの方とキャリアについて相談できる
DAI
スクールでスキルを学びつつ、同時に、一人で転職・就職に向けて動くよりもかなり業界や技術に対しても理解が深まり、良いキャリア設計ができる可能性が高いです。

実際に、Aidemyというスクールを受講され、以下のようにキャリアアップされたケースがあります。

  • もともとコールセンターでマネージャーとして5年間の業務経験
  • その後AidemyでPythonやデータ収集・処理、機械学習を学習
  • 社内転職後、AIプロジェクトでデータの生成や学習を管理するマネージャーとしてキャリアアップ

Pythonでデータ分析を始めるにも、まずは何を分析できるようになりたいのか?どんなキャリアを目指すのか?目標を決めて情報収集してから学習を始めるのが大切です。

DAI
一番手っ取り早いのは、プロに直接聞くことなので、Aidemyの無料カウンセリングで、何を学ぶとプログラミングで自動化やデータ分析できるようになるのか?や目指すキャリアについてカウンセラーと相談してみるいいと思います。

相談することで、無駄に情報収集に時間を割かなくて済みますし、その分他のことに時間を有効活用できますよ。

Pythonが本格的に学べるおすすめのスクール

ここからは、DAINOTEが実際に取材・体験しておすすめできるPythonでのデータ分析が学べるスクールについて紹介しておきますね。

  • Aidemy(公式:https://aidemy.net/
    日本の大企業のDXで利用されている、高品質なPythonスクール。こちらも給付金が使えるPython・AI・機械学習特化型スクール。
  • TechAcademy(公式:https://techacademy.jp/
    価格を抑えて、教養としてAI・Pythonを学びたいなら!統計学の基礎からPythonのライブラリ使ってデータ分析の手法を習得できます。ビジネスマンにおすすめ!
  • CodeCamp(公式:https://codecamp.jp/
    価格を抑えながらスクレイピングなどPythonでのデータ収集・業務自動化を学びたいなら!こちらもビジネスマンにおすすめ!
DAI
加えて、現在キカガクは、機械学習・AIの学習が中心ですが、合計20時間分のPython・微積など数学の知識が学習できる教材が無料で公開されていますので、興味のある方は、学習してみるといいと思います。

Aidemy

Aidemy(公式):
https://premium.aidemy.net/

【Aidemy】人工知能特化型スクールに行きたいなら!
現役データサイエンティストから、現場で使われる知識を学ぶことが可能。大手上場企業の研修でも使われている高品質な学習をあなたに。

Aidemyは、東大発の完全にAIに特化したプログラミングスクールです。

東証一部上場企業のAI研修なども行っている、日本最大級のAI教育サービスを提供しています。

AIを本格的に学べるプログラミングスクールの中では最もハイレベルでしっかりしたスクールです。

そのAidemyがAIエンジニアを育成するために提供しているのが、Aidemyのプログラミングスクールのサービスです。

Aidemyが提供しているAI系のコースには以下のようなものなどがあります。

  • データ分析コース
  • 自然言語処理コース
  • AIアプリ開発コース
  • LINE チャットボット開発コース
  • AIマーケティングコース

Aidemyを受講するなら、以下のような希望の方にオススメです。

  • ある程度Web系のプログラミングを学んでいる
  • AIについて本格的に仕事にしたいと思っている

実際に、AidemyはRettyのデータを分析した結果を成果として出すと、Rettyで一次面接突破できるという就職先紹介制度があり、それだけ実務でも通用する能力があることを信頼されているサービスです。

Aidemyでは無料カウンセリングをやっているみたいなので、ぜひ受けてみるのがよいかと思います。

Aidemy(公式):
https://premium.aidemy.net/

【Aidemy】人工知能特化型スクールに行きたいなら!
現役データサイエンティストから、現場で使われる知識を学ぶことが可能。大手上場企業の研修でも使われている高品質な学習をあなたに。

TechAcademy

TechAcademy(公式):
https://techacademy.jp

【TechAcademy】コスパ良くAIを学びたいならここ!
¥149,000から機械学習やデータサイエンスを学べる!Pythonを使ったAIや統計学に興味がある方必見!

TechAcademyは完全オンラインのプログラミングスクールです。

特徴としては、専任のエンジニアがマンツーマンでメンターとしてサポートしてくれます。

TechAcademyでAIを学べるコースとしては

  • AIコース
  • データサイエンスコース

があります。

AIコースとデータサイエンスコースのポイント

AIコースは、Python  x AIを専門に学びたい人におすすめです

具体的には、

  • 機械学習
  • ディープラーニング
  • クラスタリング

などを、Pythonのライブラリで実装していきます。

一方で、データサイエンスコースは、Python x 統計学を学びたい人におすすめですね。

より本格的に

  • 統計学の理解
  • 統計モデリングの理解

などを行っていきます。

AIコース データサイエンスコース
学習内容 Python
機械学習
ディープラーニング
クラスタリング
プログラミング
機械学習
数学・統計学
モデルの構築
価格/受講期間 社会人149,000円 / 1カ月
社会人199,000円 / 2カ月
社会人149,000円 / 1カ月
社会人199,000円 / 2カ月
公式ページ https://techacademy.jp/ai-bootcamp https://techacademy.jp/datascience-bootcamp
【2021年】TechAcademy(テックアカデミー)の評判は?受講後エンジニア転職した卒業生にインタビュー

30秒ほどで無料体験に申し込むと、

  • HTML / CSSの学習コースを無料で体験できる
  • 1回分の現役エンジニアとのビデオチャットで相談できる
  • 無料体験からの本受講で最大1万円引き

という特典があるので、まずは公式サイトから無料体験を受講してみるのがおすすめです!

\ 無料体験で最大1万円引き!30秒で学習スタート!/

無料体験はこちら

CodeCamp

CodeCamp(公式):
https://codecamp.jp

【CodeCamp】お手頃価格でAIが学べる!
わずか¥148,000+入会金¥30,000で学べるスクール。面倒な単純作業をPythonにやらせたい!という方必見のスクール!

CodeCamp(コードキャンプ)は、完全オンライン・マンツーマンレッスン型のプログラミングスクール。

Pythonデータサイエンスコース」を紹介しますね。

データサイエンス領域の「データ収集」を重視したカリキュラム

Pythonが活躍するデータサイエンスの世界には、

  • 「データ収集
  • 「データ加工」
  • 「モデル構築」

の3つのフェーズがあります。

データサイエンスコースでは、その中でも「データ収集」フェーズに重きをおいた学習内容となっています。

PythonのWebスクレイピングテクニックを使ってWeb上から必要なデータを抽出し、Excelやcsvの形に整理するというような、実務で役立つスキルを会得できるでしょう。

このスキルを会得すれば、面倒な単純作業をPythonにやらせることができるようになります。

気になる人は、無料体験レッスンで内容を体験してみてください。

データサイエンスコース
料金 / 期間 受講料金 148,000円(税抜) / 2ヶ月
+ 入学金 30,000円(税抜)
学習内容 Pythonを利用したデータ収集
公式 https://www.lp.codecamp.jp/python

CodeCamp(公式):
https://codecamp.jp

【CodeCamp】お手頃価格でAIが学べる!
わずか¥148,000+入会金¥30,000で学べるスクール。面倒な単純作業をPythonにやらせたい!という方必見のスクール!

キカガク

キカガク公式:
https://www.kikagaku.ai/

【キカガク】最大70%OFF!給付金をもらってAI人材を目指すなら!
日本マイクロソフト株式会社との共同開発講座を受講可能。経済産業省が定めるReスキル、JDLAのE資格の認定講座受けるならキカガク!

キカガクは、給付金をもらってお得に学習しながらAI人材を目指すことができる、完全オンラインのプログラミングスクールです。

DAI
特に、経済産業省が定めるReスキル、JDLAのE資格の認定講座などを受講できるため、キャリアアップを目指す方は必見ですね。

コースの特徴

オンライン動画学習サービス、Udemyでも絶賛された高品質の学習コンテンツ

キカガクの講座は、Udemyでも高い評価を得ており、1つのコースで35,000人以上が受講している講座もあります。

実際、受講した方の生の声を見てみても、非常にポジティブなものばかりでした。(受講された方のレビューはこちらから)

DAI
キカガクは大手企業の研修だけでなく、個人向けの講座でも高い評価を得ているのが分かりますね。

※また、キカガクは一度スクールに申し込むと、全ての講座を無期限で受講することができるのでかなりお得です。

実際の講座を受講前に体験することができる

キカガクでは、無料体験を申し込むだけでUdemy上で高い評価を得たコースを実際に体験することができます。

受講できるコースは以下の2つで、合計20時間分の学習動画無料になります。

  • Python&機械学習入門
  • 脱ブラックボックスコース
DAI
特に、脱ブラックボックスのコースはセールなしだと15,000円もするコースなので、まずは無料で機械学習や人口知能について学んでみたい!という方にもおすすめですね。

しかも、今なら長期コースを受講した方限定で、5万円分のAmazonギフトカードが貰えるキャンペーンが行われています!

DAI
そのため、給付金とAmazonギフトカードは併用することも可能なため、もともと79万円するコースが実質18万円台で受講できるようになります。

そのため、キカガクを受講するなら以下のような方がおすすめです。

  • まずは、スクールに行く前にAIや機械学習についてもっと詳しく知りたい
  • 将来的に仕事でデータサイエンスなどに関われるようになりたい
  • お得に資格取得をして、社内で更に活躍したい

※キカガクの講座の無料体験は、3分ほどですぐに学習を始めることができます

DAI
スクールに行くほどではないけどAIや機械学習に興味があるという方は、気軽に試してみるのがおすすめです。

【キカガク】最大70%OFF!給付金をもらってAI人材を目指すなら!
日本マイクロソフト株式会社との共同開発講座を受講可能。経済産業省が定めるReスキル、JDLAのE資格の認定講座受けるならキカガク!

プログラミングを仕事にしたい人向け

DAI
以下の記事は、これからエンジニアになりたいと考えている人に向けて書いた記事なので、参考にしてみてください。
エンジニアに未経験から転職するためにやるべき3ステップ【知らないと後悔します】
【実例つき】AIエンジニアになるには?未経験からなる方法を解説