この記事のわかること
この記事では、Pythonライブラリ「Pandas」の基礎を学ぶ方法を解説します。
この記事を読むことが、下記のことがわかります。
- Pythonライブラリ「Pandas」の基礎を効率よく習得できる
- Pandasを習得するとどんなことができるようになるかわかる
- Pandasの各メソッドなどでできることがわかる
こんな悩みを抱えている方におすすめ
- Pandasを体系的に学びたい方
- Pandasの知識が曖昧で不安を感じている方
- Pythonでデータ集計、データ加工を習得したい方
- 機械学習を勉強中で特徴量エンジニアリングを習得したい方
番外編:最短でPythonを習得したい方へ
プログラミングはインプットしただけでは習得できません。
受験勉強と同じで、参考書を読んだだけでダメで、問題集を解かなければ得点アップは見込めません。
キノコードではアウトプットもできるPython学習サービス「キノクエスト」を運営しています。
キノクエストの特徴は下記の通りです。
- 1000問以上の問題を解いてプログラミングを習得
- 環境構築不要ですぐに始められる
- 動画と連動しているので、インプットもできます
- 月額1,990円で、コミュニティもセット
▼詳細はこちら▼
キノクエストの紹介ページ
STEP1:Pandasとは?Pandasでできることは?
Pandasとは、データをExcelのような表形式で扱うことができるPythonのライブラリです。
Pandasの読み方は、「パンダス」です。
Pandasの特徴は、データ解析を支援する機能がさくさんある点です。
例えば、Pandasでは、下記のようなことができます。
- csvファイルを表形式で読み取ることができる
- Excelのデータを読み取ることができる
- 列や行を追加、変更、削除ができる
- フィルターをかけて特定の行を抽出できる
- 列の並び替えができる
- グループごとに集計することができる
- 表同士をデータを特定のキーで結合することができる
- 欠損値や異常値を処理することができる
- 重複を確認、削除
以上のように、Pandasは、データをExcelのような表形式で扱うことができるこからこそ、色々なことができます。
Excelを使ったことある方なら、Excelでできることは、Pandasではほぼできるといっても過言ではないです。
STEP2:Pandasを習得すると身につけられるスキルを理解する
Pandasを習得できると、以下のスキルが身につきます。
- データ集計の自動化
- Pandasのメソッドを使ったデータ可視化
- データ分析のためのデータ前処理
- 機械学習のための特徴量エンジニアリング
順に説明します。
1. データ集計の自動化について
したがって、Pandasができるようになると、データ集計は、お手のものということになります。
また、Pythonなので、定期実行などの設定をすれば、データ集計を自動化することができます。
2. Pandasのメソッドを使ったデータ可視化
上記のように、Pandasは、データをExcelのような表形式で扱うことができるため、Pandasを習得するとPythonでデータ集計ができようになります。
また、データ分析においては、データの前処理が必要です。
データ分析では、異常値があったり、重複があったりすると正しく分析することができません。
また、表同士を結合する準備などした準備も必要です。
Pandasは、データ分析のための前処理をすることが得意なのです。
したがって、データ分析に必須のデータ前処理ができるPandasの習得は必須です。
3. データ分析のためのデータ前処理
データ可視化については、Matplotlibが得意です。
しかし、Pandasにもデータ可視化のメソッドがあります。
サクッと分析したい場合は、Pandasを使って可視化することもできます。
したがって、Pandasを使えるようになるとデータ可視化もできるようになります。
4. 機械学習のための特徴量エンジニアリング
Pandasが使えるようになると、機械学習をやる上で必須の特徴量エンジニアリングができるようになります。
機械学習をするには、特徴量エンジニアリングというプロセスを経なければなりません。
特徴量エンジニアリングでは、下記のようなことを実施します。
- 特徴作成。ex.文字列のデータを数字に変換など
- 特徴変換。ex.欠損値を平均値で埋める
- 特徴抽出。ex.複数ある特徴の次元を圧縮する
- 特徴選択。ex.モデル構築に必要のない特徴量を削除する
この特徴量エンジニアリングは、Pandasの得意分野です。
STEP3:Pandasの学習の全体像を知る
Pandasを学習する方に見ていただきたい動画は、
YouTubeチャンネル「キノコード」のPanda入門講座合併版です。
これは、全14回のPanda入門講座を1本にまとめた動画です。
全部で3時間の長編動画です。
自分でいうのもなんですが、有料のものよりクオリティが高いと思っているほどの自信作です。
この1本をみれば、Pandasの基礎的な部分は抑えられます。
ここで基礎さえ抑えられれば、あとはご自身で勉強していくこともできるでしょう。
STEP4:Pandasの習得するまでの学習時間
Python学習サービスの「キノクエスト」には、Pandasの問題は、約300問あります。
1日1時間ずつ勉強するのであれば、1日10問進めれると仮定します。
そうすると、30日間で終わることになります。
ただし、復習などを含めると、その倍はかかると想定されます。
したがって、Python基礎で1ヶ月、Pandasで2ヶ月で終わります。
業務自動化関連のPythonライブラリの学習については、3~4つ触れば、だいぶ自信になると思います。
2週間で1つずつ学習すると仮定すると、2ヶ月です。
したがって、Pythonによる業務効率化の学習時間は、5ヶ月と想定されます。
なお、Pythno学習サービス「キノクエスト」は、学習カリキュラムがあり、学習順番や学習方法に迷うことがありません。
動画もあるのでインプットができ、環境構築不要のコードを書く機能もあります。
Python学習のお供にご登録ください。
▼キノクエストの紹介ページ
こちらをクリック
STEP5:Pandas入門を体系的に学習する
01.Pandas入門講座のコース紹介
こちらの記事では、以下の内容を説明しています。
- Pandas入門コースは、どんな講座なのか?
- Pandasとは何か?
- Pandasできること
02.Jupyter Labの使い方
こちらの記事では、以下の内容を説明しています。
- はじめに
- Jupyter Labとは?
- Jupyter Labの起動方法
- Jupyter Labでのフォルダの作成方法
- Notebookの作成、削除、名前の変更
- notebookのプログラムの書き方と実行方法
- マークダウン記法、コメントアウトの書き方
- ノートブックの保存方法
- コード補完
- 拡張機能のVariable Inspector
- pyファイルへの変換方法
- Jupyter Labの終了
03.Pandasとは?
こちらの記事では、以下の内容を説明しています。
- Pandasとは
- PandasのDataFrameとSeriesの紹介
- Pandasをインポート方法について説明
- Pandas入門講座に使うファイルの説明
- Pandasでcsvファイルを読み取る
- データフレームで表示する列数・行数を変更する
- データフレームの最後の10行とってくる
- データフレームをランダムに10行とってくる
- データフレームの情報を取得する
- データフレームの統計量を取得する
- グループごとに集計をする
- 列の並び替えをする
- データフレーム動詞を結合をする
- Pandasでグラフ化する方法の紹介
- 時系列データの取り扱い
04.DataFrameとは?
こちらの記事では、以下の内容などを説明しています。
- データフレームとは
- データフレーム作成方法
- インデックス、カラム参照法補
- renameメソッドでカラム名変更
- renameメソッドでインデックス名変更
- locプロパティを使って行や列を取得する方法
- ilocプロパティで列を取得する方法
- locプロパティでデータ操作、データ変更
- 複数のデータ変更
- スライスを使ってデータ取得
- get_locメソッドで行番号取得、列番号取得
- データ型を調べる
- 行数・列数取得
- 行と列を入れ替え
05.Seriesとは
こちらの記事では、以下の内容を説明しています。
- はじめに
- リストを使ったSeries作成方法
- Numpyを使ったSeries作成方法
- データ型の取得
- index取得
- index変更
- 辞書型を使ったSeries作成方法
- Seriesの値の取得方法
- Seriesの複数の値の取得
- Seriesの比較演算子使った抽出方法
- Seriesの要素数の取得
- Seriesのindexとデータ部分に名前を付ける方法
- Seriesの四則演算
- Series同士の計算
- 欠損値確認
- DataFrameからSeries取得
- DataFrameにSeries追加
- 時系列データ
06.PandasでCSV・Excelファイルの読み込み・書き出し、データベースとの接続方法
こちらの記事では、以下の内容を説明しています。
- csvファイルをデータフレームとして読み取る方法
- csvファイルのカラム名を変更してデータフレームとして読み取る方法
- csvファイルのインデックスを指定してデータフレームとして読み取る方法
- csvファイルの複数のインデックスを指定して読み取る方法
- データフレームをcsvファイルに書き出す方法
- Excelファイルをデータフレームとして読み込む方法
- 行をスキップしてExcelファイルをデータフレームとして読み込み方法
- カラム名を指定してExcelファイル読み込む方法
- インデックスを指定してExcelファイル読み込む方法
- 行スキップ、インデックス指定して読み込む方法
- データフレームをExcelファイルに書き出す方法
- クリップボードのデータをデータフレームとして読み込む方法
- Pandasでデータベース接続する方法
- Pandasでデータベースを作成する方法
- Pandasでデータベースのテーブルからデータを取得する方法
07.DataFrameのデータ抽出の方法
こちらの記事では、以下の内容を説明しています。
- 表示する列数・行数を変更
- データフレームの読み込み
- インデックス番号の振り直し
- DataFrameをスライスでデータ抽出
- 列名を指定したDataFrameをスライスでデータ抽出
- 条件に一致する行のみデータ抽出
- 条件に一致する行のみデータ抽出(文字列)
- 条件に一致する行のみデータ抽出(10の倍数)
- 条件に一致しない行のみデータ抽出(Not演算子)
- 条件に一致しない行のみデータ抽出(不等価演算子)
- and条件
- or条件
- 特定の条件でデータ抽出するqueryメソッド
- 特定の条件でデータ抽出するqueryメソッド(or条件)
- 特定の条件でデータ抽出するqueryメソッド(and条件)
- 特定の値に一致するデータ抽出するisinメソッド
- 特定の値に一致するデータ抽出するisinメソッド(複数条件)
- 特定の値を含むデータを抽出するcontainsメソッド
- 特定の値から始まるデータを抽出するstartswithメソッド
- 特定の値から始まるデータを抽出するendswithメソッド
- maxメソッドを使ったデータ抽出
- locメソッドを使ったデータ抽出
08.DataFrameのデータの並び替える方法
こちらの記事では、以下の内容を説明しています。
- DataFrameの並び替え
- DataFrameの並び替え(降順)
- DataFrameの並び替え(昇順)
- DataFrameで2つのカラムの並び替え
- DataFrameで3つのカラムの並び替え
- 欠損値の取り扱い
- 行方向の並び替え
- 列方向の並び替え
- もとのデータフレームを変更
- インデックスの並び替え
- sort_indexの引数
- カラムの並び替え
- Seriesの並び替え(sort_values)
- Seriesの並び替え(sort_index)
09.groupbyメソッドを使ってデータ集計するの方法
こちらの記事では、以下の内容を説明しています。
- グループごとに集計する方法
- グループごとに平均を算出する方法
- 複数のグループごとの平均を算出する方法
- 小数点以下省略する方法
- グループごとの合計を算出する方法
- グループごとのデータ数を数える方法
- グループごとのデータ数を数える方法(欠損値を含む)
- グループごとのn番目のデータ取得
- グループごとの最大値する方法
- グループごとの最小値する方法
- 複数要素でグルーピングする方法
- 複数の方法で集計ができるaggメソッド
- groupbyを使って桁区切りで表示する方法
- 平均と合計、桁区切り表示
- groupbyで自作の関数適用
10.pivot_tableメソッドを使ってデータ集計する方法
こちらの記事では、以下の内容を説明しています。
- ピボットテーブルとは
- ピボットテーブルの使い方
- ピボットテーブルで平均を算出する方法
- 集計された小数点以下を省略する方法
- ピボットテーブルで複数データの集計する方法
- ピボットテーブルで欠損値Nanの置き換える方法
- ピボットテーブルでgroupbyのような集計をする方法
- ピボットテーブルで複数方法で集計する方法
- ピボットテーブルで独自の関数を使って集計する方法
- pivotの使い方、pivot_tableとの違い
11.mergeメソッドでデータフレーム同士を結合する方法
こちらの記事では、以下の内容を説明しています。
- mergeメソッドで同じ名前のカラムをキーにデータフレームを結合する方法
- 重複するカラム名がある場合に、任意の名前を指定する方法
- 異なるカラム名をキーにデータフレームを結合する方法
- 複数のキーでデータフレームを結合する方法
- 結合の種類を変更する方法
- インデックスをキーにデータフレームを結合する方法
- 結合結果をソートする方法
- concatメソッドとmergeメソッドの違いについて
12.concat関数でデータフレーム同士を結合する方法
こちらの記事では、以下の内容を説明しています。
- concat関数で、2つのデータフレームを結合する方法
- インデックスをリセットして結合する方法
- 3つのデータフレームを結合する方法
- インデックスにラベルを追加する方法
- カラムが共通しない場合の結合する方法
- 結合の種類 outerで結合する方法
- 結合の種類 innerで結合する方法
- concat関数でデータフレームを縦方向に結合する方法
- concat関数でデータフレームを横方向に結合する方法
- 複数データフレームを結合する方法
- concat関数とmergeメソッドの違いについて
13.Pandas入門講座|13.Pandasで時系列データを扱う方法【PythonのライブラリPandas】
- 時系列データへの変換する方法
- 時系列データの抽出
- 時系列データの集計
- 曜日ごとの集計
Pandas入門講座|14.SeriesやDataFrameに関数を適用する方法(map, apply, applymapメソッド)【PythonのライブラリPandas】
- 数値Seriesとmapメソッド
- 文字列Seriesとmapメソッド
- 数値Seriesとapplyメソッド
- 文字列Seriesとapplyメソッド
- 数値DataFrameとapplymapメソッド
- 文字列DataFrameとapplymapメソッド
- 数値DataFrameとapplyメソッド
- 文字列DataFrameとapplyメソッド
STEP5:Pandasの次に学習することをおすすめする内容
Pandasを学習したあとは、データ分析や機械学習を勉強したい方は、Matplotlibを学習されることをおすすめします。
業務自動化をしてみたい方は、さっそく色々な業務効率化にチャレンジをして、引き出しを増やしていきましょう。
達成したい目標ごと、作りたいもの別の学習ロードマップについては、下記の記事で紹介しています。
キノクエストの紹介
プログラミングはインプットしただけでは習得できません。
受験勉強と同じで、参考書を読んだだけでダメで、問題集を解かなければ得点アップは見込めません。
キノコードではアウトプットもできるPython学習サービス「キノクエスト」を運営しています。
キノクエストの特徴は下記の通りです。
- 1000問以上の問題を解いてプログラミングを習得
- 環境構築不要ですぐに始められる
- 動画と連動しているので、インプットもできます
- 月額1,990円で、コミュニティもセット
▼詳細はこちら▼
キノクエストの紹介ページ