はじめに#

インストール#

conda をお使いですか?

pandas は Anaconda ディストリビューションの一部であり、Anaconda または Miniconda を使ってインストールできます。

pip をお好みですか?

pandas は PyPI から pip 経由でインストールできます。

詳細な手順が必要ですか?

特定のバージョンをインストールしますか?ソースからインストールしますか?高度なインストールページをご確認ください。

pandas の概要#

スプレッドシートやデータベースに保存されているような表形式データを扱う場合、pandas は最適なツールです。pandas はデータの探索、クリーニング、処理をサポートします。pandas では、データテーブルは DataFrame と呼ばれます。

../_images/01_table_dataframe.svg

pandas は、多くのファイル形式やデータソース (csv, excel, sql, json, parquet など) との統合をそのままサポートしています。これらのデータソースからのデータインポートは、read_* のプレフィックスを持つ関数によって提供されます。同様に、to_* メソッドはデータを保存するために使用されます。

../_images/02_io_readwrite.svg

特定の行や列を選択またはフィルタリングしますか?条件に基づいてデータをフィルタリングしますか?必要なデータをスライス、選択、抽出するためのメソッドが pandas で利用できます。

../_images/03_subset_columns_rows.svg

pandas は Matplotlib の力を利用して、データをそのままプロットする機能を提供します。データに対応するプロットタイプ (散布図、棒グラフ、ボックスプロットなど) を選択できます。

../_images/04_plot_overview.svg

計算のためにデータテーブルのすべての行をループする必要はありません。列に対するデータ操作は要素ごとに行われます。他の列の既存データに基づいて DataFrame に列を追加するのは簡単です。

../_images/05_newcolumn_2.svg

基本的な統計量 (平均、中央値、最小値、最大値、カウントなど) は簡単に計算できます。これらまたはカスタム集計は、データセット全体、データの移動ウィンドウ、またはカテゴリ別にグループ化して適用できます。後者は、split-apply-combine アプローチとしても知られています。

../_images/06_groupby.svg

データテーブルの構造をさまざまな方法で変更できます。melt() を使ってデータテーブルをワイド形式からロング形式/整形形式に変換したり、pivot() を使ってロング形式からワイド形式に変換したりできます。集計を組み込むことで、単一のコマンドでピボットテーブルを作成できます。

../_images/07_melt.svg

複数のテーブルは、列方向と行方向の両方で連結できます。データベースのような結合/マージ操作が提供され、複数のデータテーブルを結合できます。

../_images/08_concat_row.svg

pandas は時系列データを強力にサポートしており、日付、時刻、時刻インデックス付きデータを扱うための幅広いツールセットを備えています。

データセットには数値データだけが含まれているわけではありません。pandas は、テキストデータをクリーニングし、そこから有用な情報を抽出するための幅広い機能を提供します。

…から移行する#

表形式データを操作する他のソフトウェアに精通していますか?既に知っているソフトウェアと比較して、pandas の同等の操作を学びましょう。

R プログラミング言語data.frame データ構造を提供し、tidyverse のような複数のパッケージが data.frame を使用して拡張し、pandas と同様の便利なデータ処理機能を提供しています。

SELECTGROUP BYJOIN などに既に慣れていますか?これらの SQL 操作のほとんどは pandas にも同等のものがあります。

STATA 統計ソフトウェアスイートに含まれる data set は、pandas の DataFrame に相当します。STATA で知られている多くの操作は pandas にも同等のものがあります。

Excel や他のスプレッドシートプログラムのユーザーは、多くの概念が pandas にも適用可能であることに気づくでしょう。

SAS 統計ソフトウェアスイートも、pandas の DataFrame に相当する data set を提供しています。SAS のベクトル化された操作、フィルタリング、文字列処理操作なども、pandas に同様の機能があります。

チュートリアル#

pandas の機能の概要については、10 Minutes to pandas を参照してください。

pandas を使ったデータ操作の簡潔なガイドとして、pandas の チートシートも参照できます。

コミュニティは、オンラインで利用可能な多種多様なチュートリアルを作成しています。一部の資料は、コミュニティが寄稿した コミュニティチュートリアルに記載されています。