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
Freigeben: 2024-12-15 20:55:09
Original
742 Leute haben es durchsucht

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]})
Nach dem Login kopieren

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

bins = [0, 1, 5, 10, 25, 50, 100]
Nach dem Login kopieren

Sie können die Schnittfunktion als verwenden folgt:

df['binned'] = pd.cut(df['percentage'], bins=bins)
Nach dem Login kopieren

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())
Nach dem Login kopieren

Ausgabe:

(25, 50]     3
(50, 100]    1
Nach dem Login kopieren

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

print(df.groupby(df['binned']).size())
Nach dem Login kopieren

Ausgabe:

percentage
(0, 1]       0
(1, 5]       0
(5, 10]      0
(10, 25]     0
(25, 50]     3
(50, 100]    1
dtype: int64
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage