1. ホーム
  2. スクリプト・コラム
  3. パイソン

Pythonの効率的なデータフレーム処理ツール、Sidetableを推薦します。

2022-01-26 09:08:44

Pandasはデータサイエンス界で人気のあるPythonパッケージで、データ解析のための多くの関数やメソッドが含まれていることはご存知のとおりです。その機能はデータ分析に十分有効ですが、カスタムライブラリを利用することでPandasにさらなる付加価値を与えることができます。

SidetableはオープンソースのPythonライブラリで、value_countsとcrosstab関数の組み合わせとして、データ分析・探索に利用できるツールである。今回は、その特徴をさらに掘り下げて解説していきます。学習のためにブックマークしたり、サポートのために「いいね!」を押したり、お気軽にご利用ください。

インストール方法

SidetableはPyPIからインストールすることができます。

pip install sidetable


使用方法

KaggleからダウンロードしたTitanicデータセットを使って、ライブラリを実装します。

sidetableのアイデアは、データ分析に必要なコードの行数を減らし、ワークフローを高速化することです。どんなデータセットでも、特徴分布の可視化、頻度カウント、欠損レコードカウントなど、実行しなければならないデータ分析タスクが多数あります。

Sidetableライブラリの機能について、Titanicデータセットを用いてより詳しく説明します。

1. freq()

Pandasは特徴量の頻度カウントを計算するvalue_counts()関数を提供しています。pandasは分布カウントや確率分布を計算することができますが、より簡単にこれらの値を組み合わせたいと思うかもしれません。

分布回数と確率分布は組み合わせて使うことができますが、多くの入力とコードのメモリが必要です。

sidetableについては、freq()関数を使ってPythonのコード1行で実装する方がシンプルです。あなたは、累積的な合計、パーセンテージ、およびより多くの柔軟性を得ることができます。

このほか、複数の列をグループ化し、グループ化された要素の分布を可視化することも可能です。

また、グループ化されたデータの "sum"が特定の列に基づいていることを示すために、パラメータ値を使って要素の列を指定することができます。

2. 数値

sidetable の counts() 関数は、さらなる分析やモデリングのためにカテゴリや値として考慮する必要がある特徴を識別するために使用できる要約表を生成します。counts() 関数は、特徴に対するユニークな値の数および最頻値と最少値を表示します。

exclude と include パラメータを使用すると、データセットから特定のデータ型を除外したり、含めたりすることができます。

3. 行方不明()

sidetableのmissing()関数は、各列の欠落値の総数および割合で欠落レコードを表示するサマリーテーブルを生成します。

4. 小計()

Sidetableのsubtotal()関数は、Pandasのgroup by関数と一緒に使うのが最適です。これは、1つまたは複数のレベルのデータフレームのグループ化に対する小計を計算するために使用することができます。

小計()関数は、グループ化されたデータの1つ以上のレベルに追加することができます。まず、groupby() 関数でデータボックスをグループ化し、各レベルで小計を追加する必要があります。

まとめ

Sidetableは、Pandasのvalue_countsとcrosstabを組み合わせて、解釈しやすく、分析結果も提供できるサマリーテーブルを生成する、効率的で便利なツールです。構文がシンプルなため、データ解析や探索のためのより良いライブラリとなっています。

以上、pythonの効率的なデータフレーム処理ツール「Sidetable」の詳細を紹介しました。

Pythonデータフレーム処理ツールSidetableについては、スクリプトハウスの他の関連記事もご参照ください。