ホームページ >テクノロジー周辺機器 >AI >スキムピー:データの要約については、パンダの代替()を説明します

スキムピー:データの要約については、パンダの代替()を説明します

William Shakespeare
William Shakespeareオリジナル
2025-03-17 10:18:14146ブラウズ

データの要約は、データ分析ワークフローの重要な最初のステップです。 Pandasのdescribe()関数は多くの人にとって頼りになるツールでしたが、その機能は数値データに限定されており、基本統計のみを提供します。すべての列タイプについて、詳細で視覚的に魅力的な、包括的なデータの概要を提供するように設計されたPythonライブラリであるSkimpyを入力してください。

この記事では、SkimpyがPandasの説明にふさわしい代替品である理由を探ります。スキムピーのインストールと使用方法を学び、その機能を調査し、その出力を例でdescribe()と比較します。最後に、露出度が探索的データ分析(EDA)をどのように強化するかを完全に理解することができます。

学習成果

  • Pandasの描写()関数の制限を理解します。
  • Pythonに露出度のインストールと実装方法を学びます。
  • skimpyの詳細な出力と洞察を例で調べてください。
  • skimpyとpandas describs()の出力を比較します。
  • 露出度をデータ分析ワークフローに統合する方法を理解してください。

目次

  • なぜパンダは()を説明するのですか?
  • 露出度の高いことから始めます
  • なぜ露出度が良いのですか?
  • データの要約に露出度を使用します
  • 露出度を使用することの利点
  • 結論
  • よくある質問

なぜパンダは()を説明するのですか?

Pandasのdescribe()関数は、データを迅速に要約するために広く使用されています。探索的データ分析(EDA)の強力なツールとして機能しますが、その有用性はいくつかの面で制限されています。以下は、その欠点の詳細な内訳と、ユーザーがしばしば露出度のような代替を求める理由です。

デフォルトで数値データに焦点を当てます

デフォルトでは、明示的に構成されていない限り、describ()は数値列でのみ動作します。

例:

 PDとしてパンダをインポートします  

data = {  
    「名前」:[「アリス」、「ボブ」、「チャーリー」、「デビッド」]、  
    「年齢」:[25、30、35、40]、  
    「都市」:[「ニューヨーク」、「ロサンゼルス」、「シカゴ」、「ヒューストン」]、  
    「給与」:[70000、80000、120000、90000]、  
}  

df = pd.dataframe(data)  
print(df.describe())

出力:

 年齢給与  
カウント4.000000 4.000000  
平均32.500000 90000.000000  
STD 6.454972 20000.000000  
最小25.000000 70000.000000  
25%28.750000 77500.000000  
50%32.500000 85000.000000  
75%36.250000 97500.000000  
最大40.000000 120000.000000

重要な問題:

非数字の列(名前と都市)は、明示的にdestribを呼び出しない限り無視されます(= 'all'を含む)。それでも、非数字の列の範囲は出力の範囲のままです。

非数学データの限定概要

include = 'All'を使用して非数字の列が含まれている場合、概要は最小限です。それはのみを示しています:

  • count:非混乱値の数。
  • 一意:一意の値のカウント。
  • TOP:最も頻繁に発生する値。
  • Freq:最高値の頻度。

例:

 print(df.describe(include = "all"))

出力:

 名前の都市の給与  
カウント4 4.0 4 4.000000  
ユニーク4ナン4ナン  
トップアリスナンニューヨークナン  
freq 1 nan 1 nan  
平均NAN 32.5 NAN 90000.000000  
STD NAN 6.5 NAN 20000.000000  
MIN NAN 25.0 NAN 70000.000000  
25%NAN 28.8 NAN 77500.000000  
50%NAN 32.5 NAN 85000.000000  
75%NAN 36.2 NAN 97500.000000  
MAX NAN 40.0 NAN 120000.000000

重要な問題:

  • 文字列列(名前と都市)は、過度に基本的なメトリックを使用して要約されています(たとえば、Top、freq)。
  • 文字列の長さ、パターン、または欠損データの割合に関する洞察はありません。

欠落データに関する情報はありません

Pandas 'describe()は、各列の欠落データの割合を明示的に表示しません。欠落データを識別するには、個別のコマンドが必要です。

 print(df.isnull()。sum())

高度なメトリックの欠如

descrid()が提供するデフォルトのメトリックは基本です。数値データについては、次のことを示しています。

  • カウント、平均、および標準偏差。
  • 最小、最大、および四分位数(25%、50%、および75%)。

ただし、次のような高度な統計的詳細がありません。

  • 尖度と歪度:データ分布の指標。
  • 異常値の検出:典型的な範囲を超えた極値の兆候はありません。
  • カスタム集約:ユーザー定義機能を適用するための柔軟性が限られています。

データの視覚化が悪い

descrition()は、単純なテキストの概要を出力します。トレンドや分布を視覚化するには、MatplotlibやSeabornなどの追加のライブラリが必要です。

例:ヒストグラムまたはボックスプロットは分布をよりよく表しますが、()はそのような視覚的能力を提供しません。

露出度の高いことから始めます

Skimpyは、探索的データ分析(EDA)を簡素化および強化するために設計されたPythonライブラリです。データの詳細かつ簡潔な要約を提供し、数値列と非数字の両方の列を効果的に処理します。 Pandasのdescribe()とは異なり、露出度には高度なメトリック、欠損データ洞察、よりクリーンでより直感的な出力が含まれます。これにより、データセットを迅速に理解し、データ品質の問題を特定し、より深い分析の準備をするための優れたツールになります。

PIPを使用して露骨なインストール:
ターミナルまたはコマンドプロンプトで次のコマンドを実行します。

ピップインストール露出度

インストールを確認してください:
インストール後、PythonスクリプトまたはJupyterノートブックにインポートすることにより、露骨が正しくインストールされていることを確認できます。

露出度の高いインポートスキムから  
print( "スキンピーが正常にインストールされました!")

なぜ露出度が良いのですか?

ここで、露骨を使用する方が良い理由について、さまざまな理由を詳細に探りましょう。

すべてのデータ型の統一要約

スキムピーは、すべてのデータ型を同等に重要で扱い、単一の統合テーブルで数値列と非数字の両方の列の豊富な要約を提供します。

例:

露出度の高いインポートスキムから  
PDとしてパンダをインポートします  

data = {  
    「名前」:[「アリス」、「ボブ」、「チャーリー」、「デビッド」]、  
    「年齢」:[25、30、35、40]、  
    「都市」:[「ニューヨーク」、「ロサンゼルス」、「シカゴ」、「ヒューストン」]、  
    「給与」:[70000、80000、120000、90000]、  
}  

df = pd.dataframe(data)  
スキム(df)

出力:

露出度の高いものは、次のような情報を含む簡潔でよく構造化されたテーブルを生成します。

  • 数値データ:カウント、平均、中央値、標準偏差、最小、最大、および四分位数。
  • 非数値データ:一意の値、最も頻繁な値(モード)、欠損値、および文字カウント分布。

スキムピー:データの要約については、パンダの代替()を説明します

欠落データの組み込みハンドリング

スキムピーは、概要の欠損データを自動的に強調し、各列の欠損値の割合とカウントを表示します。これにより、df.isnull()。sum()などの追加コマンドが必要になります。

なぜこれが重要なのか:

  • ユーザーがデータ品質の問題を事前に識別するのに役立ちます。
  • 欠落データの帰属または削除に関する迅速な決定を奨励します。

高度な統計的洞察

より深い洞察を提供する追加のメトリックを含めることにより、スキムピーは基本的な記述統計を超えています。

  • 尖度:分布の「尾」を示します。
  • 歪度:データ分布の非対称性を測定します。
  • 外れ値フラグ:潜在的な外れ値を持つ列を強調します。

テキスト列の豊富な要約

文字列のような非数学データの場合、露出度はパンダが説明する詳細な要約を提供します()は一致できません。

  • 文字列の長さ分布:最小、最大、および平均文字列長の洞察を提供します。
  • パターンとバリエーション:テキストデータの一般的なパターンを識別します。
  • 一意の値とモード:テキストの多様性のより明確な画像を提供します。

テキスト列の出力の例:

カラム 一意の値 最も頻繁な値 モードカウント 平均長さ
名前 4 アリス 1 5.25
4 ニューヨーク 1 7.50

コンパクトで直感的なビジュアル

スキムピーは、特に大規模なデータセットでは、解釈が容易な色分けされた表現と表の出力を使用します。これらのビジュアルが強調しています:

  • 欠損値。
  • 分布。
  • 要約統計、すべて一目で。

この視覚的な魅力により、スキンピーの要約はプレゼンテーションに対応しています。これは、利害関係者に調査結果を報告するのに特に役立ちます。

カテゴリ変数の組み込みサポート

skimpyは、次のような、Pandasの説明()のカテゴリデータの特定のメトリックを提供します。

  • カテゴリの分布。
  • 各カテゴリの頻度と割合。

これにより、人口統計、地理的、またはその他のカテゴリ変数を含むデータセットにとって、露出度が特に価値があります。

データの要約に露出度を使用します

以下では、データの要約のために露出度を効果的に使用する方法について説明します。

ステップ1:スキンピーをインポートし、データセットを準備します

スキムピーを使用するには、最初にデータセットと一緒にインポートする必要があります。スキムピーは、シームレスにパンダのデータフレームを統合します。

例データセット:
数値、カテゴリ、テキストデータを含む簡単なデータセットを使用してみましょう。

 PDとしてパンダをインポートします
露出度の高いインポートスキムから

#サンプルデータセット
data = {
    「名前」:[「アリス」、「ボブ」、「チャーリー」、「デビッド」]、
    「年齢」:[25、30、35、40]、
    「都市」:[「ニューヨーク」、「ロサンゼルス」、「シカゴ」、「ヒューストン」]、
    「給与」:[70000、80000、120000、90000]、
    「評価」:[4.5、なし、4.7、4.8]、
}

df = pd.dataframe(data)

ステップ2:Skim()関数を適用します

露出度のコア関数はSkim()です。データフレームに適用されると、すべての列の詳細な要約が提供されます。

使用法:

スキム(df)

スキムピー:データの要約については、パンダの代替()を説明します

ステップ3:Skimpyの要約を解釈します

skimpyの出力が意味するものを分解しましょう。

カラム データ型 ない (%) 平均 中央値 マックス 個性的 最も頻繁な値 モードカウント
名前 文章 0.0% - - - - 4 アリス 1
数値 0.0% 32.5 32.5 25 40 - - -
文章 0.0% - - - - 4 ニューヨーク 1
給料 数値 0.0% 90000 85000 70000 120000 - - -
評価 数値 25.0% 4.67 4.7 4.5 4.8 - - -
  • 欠損値: 「評価」列には25%の欠損値があり、潜在的なデータ品質の問題を示しています。
  • 数値列: 「給与」の平均と中央値は近く、ほぼ対称的な分布を示しますが、「年齢」はその範囲内に均等に分布しています。
  • テキスト列: 「都市」列には4つの一意の値があり、「ニューヨーク」が最も頻繁に存在します。

ステップ4:重要な洞察に焦点を当てます

露出度は、識別に特に役立ちます。

  • データ品質の問題:
    • 「評価」などの列の欠損値。
    • Min、Max、Quartilesなどのメトリックによる外れ値。
  • カテゴリデータのパターン:
    • 「都市」のような列の中で最も頻繁なカテゴリ。
  • 文字列の長さの洞察:
    • テキストが多いデータセットの場合、skimpyは平均文字列の長さを提供し、トークン化などの前処理タスクを支援します。

ステップ5:露出度の高い出力のカスタマイズ

露出度の高いことにより、ニーズに応じて、ある程度の柔軟性がその出力を調整できます。

  • サブセット列:データフレームのサブセットとしてそれらを渡すことにより、特定の列のみを分析します。
スキム(df [["age"、 "salary"]])
  • 欠落データに焦点を当てる:欠落データの割合をすばやく識別する:
 Skim(df).loc [:, ["column"、 "Missing(%)"]]]

露出度を使用することの利点

  • オールインワンの概要:露出度の高い数値と非数字の洞察を単一のテーブルに統合します。
  • 時間節約:さまざまなデータ型を探索するために複数のコードを記述する必要性を排除します。
  • 読みやすさの向上:清潔で視覚的に魅力的な要約により、トレンドや外れ値を識別しやすくなります。
  • 大規模なデータセットに効率的: skimpyは、ユーザーを圧倒することなく、多数の列でデータセットを処理するように最適化されています。

結論

露出度の高いことは、すべてのタイプのデータセットに関する詳細で人間の読み取り可能な洞察を提供することにより、データの要約を簡素化します。 Pandas describs()とは異なり、数値データへの焦点を制限せず、より豊富な要約体験を提供します。データのクリーニング、トレンドの調査、レポートの準備など、skimpyの機能により、データの専門家にとって不可欠なツールになります。

キーテイクアウト

  • 露出度の高い列は、数値列と非数字の両方の列をシームレスに処理します。
  • 欠損値や一意のカウントなど、追加の洞察を提供します。
  • 出力形式は、Pandasが説明するよりも直感的で視覚的に魅力的です。

よくある質問

Q1。露出度は何ですか?

A.これは、包括的なデータの要約のために設計されたPythonライブラリであり、Pandas oftersion()を超えた洞察を提供します。

Q2。露出度の高い交換はdescrib()を置き換えることができますか?

A.はい、機能強化を提供し、descrid()を効果的に置き換えることができます。

Q3。露出度の高いことは大規模なデータセットをサポートしていますか?

A.はい、大規模なデータセットを効率的に処理するために最適化されています。

Q4。スキンピーをインストールするにはどうすればよいですか?

A.ピップを使用してインストールします:PIPインストールスキンピー。

Q5。 ()より露出度の高いものが()よりも優れている理由は何ですか?

A.すべてのデータ型を要約し、値の洞察を欠いていることを含み、よりユーザーフレンドリーな形式で出力を提示します。

以上がスキムピー:データの要約については、パンダの代替()を説明しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。