Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich numerische Daten in einem Pandas-DataFrame einteilen und Werte in jedem Bin zählen?

Wie kann ich numerische Daten in einem Pandas-DataFrame einteilen und Werte in jedem Bin zählen?

Barbara Streisand
Barbara StreisandOriginal
2024-12-15 20:55:09745Durchsuche

How Can I Bin Numeric Data in a Pandas DataFrame and Count Values within Each Bin?

Gruppieren einer Spalte mit Pandas, um Wertzählungen zu erhalten

Beim Umgang mit numerischen Daten in einem Pandas-Datenrahmen kann das Binieren nützlich sein Die Daten werden zur Analyse in bestimmte Bereiche unterteilt. Dieser Vorgang wird als Binning bezeichnet.

Um eine Spalte in Pandas zu klassifizieren, können Sie die folgenden Schritte ausführen:

  1. Definieren Sie die Bin-Bereiche mithilfe des Bins-Parameters.
  2. Erstellen Sie mit der Ausschneidefunktion eine neue Spalte im Datenrahmen.
  3. Verwenden Sie Wertzählungen oder Groupby, um die Anzahl der Werte innerhalb jeder Spalte zu erhalten bin.

Beispiel:

Betrachten Sie den folgenden Datenrahmen mit einer numerischen Spalte namens „Prozentsatz“:

import pandas as pd
import numpy as np

df = pd.DataFrame({'percentage': [46.5, 44.2, 100.0, 42.12]})

To bin die Spalte „Prozentsatz“ in die folgenden Bins:

bins = [0, 1, 5, 10, 25, 50, 100]

Sie können die Schnittfunktion als verwenden folgt:

df['binned'] = pd.cut(df['percentage'], bins=bins)

Dadurch wird eine neue Spalte namens „binned“ im Datenrahmen erstellt, die die Bin-Beschriftungen enthält.

Um die Wertanzahl innerhalb jedes Bins zu erhalten, können Sie die verwenden value_counts-Methode:

print(df['binned'].value_counts())

Ausgabe:

(25, 50]     3
(50, 100]    1

Alternativ können Sie Groupby verwenden und aggregieren Größe:

print(df.groupby(df['binned']).size())

Ausgabe:

percentage
(0, 1]       0
(1, 5]       0
(5, 10]      0
(10, 25]     0
(25, 50]     3
(50, 100]    1
dtype: int64

Dies liefert Ihnen die Anzahl der Werte in jedem Bin.

Das obige ist der detaillierte Inhalt vonWie kann ich numerische Daten in einem Pandas-DataFrame einteilen und Werte in jedem Bin zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn