Heim  >  Artikel  >  Backend-Entwicklung  >  Wie können Pandas und Wörterbuchmanipulation einen breiten Datenrahmen in ein aufgeräumtes Format umformen?

Wie können Pandas und Wörterbuchmanipulation einen breiten Datenrahmen in ein aufgeräumtes Format umformen?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-22 00:49:12805Durchsuche

How Can Pandas Melt and Dictionary Manipulation Reshape a Wide Dataframe into a Tidy Format?

Pandas-Melt-Funktion: Einfaches Umformen von Datenrahmen

Die Pandas-Melt-Funktion ist ein leistungsstarkes Tool zum Umformen von Datenrahmen, das große Daten in ein langes, übersichtliches Format umwandelt. Dies erleichtert die Analyse und Bearbeitung von Daten.

Problem: Umformen eines Datenrahmens

Betrachten Sie den folgenden Datenrahmen und das folgende Wörterbuch:

df = pd.DataFrame([[2, 4, 7, 8, 1, 3, 2013], [9, 2, 4, 5, 5, 6, 2014]], columns=['Amy', 'Bob', 'Carl', 'Chris', 'Ben', 'Other', 'Year'])

d = {'A': ['Amy'], 'B': ['Bob', 'Ben'], 'C': ['Carl', 'Chris']}

Das Ziel besteht darin, den Datenrahmen umzuformen ein aufgeräumtes Format mit zusätzlichen Spalten:

    Group   Name  Year  Value
0      A    Amy  2013      2
1      A    Amy  2014      9
2      B    Bob  2013      4
...
10  Other         2013      3
11  Other         2014      6

Using Melt and Reshaping Wörterbuch

Die Schmelzfunktion allein wird die Transformation nicht abschließen. Um das gewünschte Ergebnis zu erhalten, müssen wir auch das Wörterbuch manipulieren:

m = pd.melt(df, id_vars=['Year'], var_name='Name')

d2 = {}
for k, v in d.items():
    for item in v:
        d2[item] = k

m['Group'] = m['Name'].map(d2)

Umgang mit „Anderen“ Werten

Schließlich verschieben wir „Andere“ aus der Spalte „Name“ in die Spalte „Gruppe“:

mask = m['Name'] == 'Other'
m.loc[mask, 'Name'] = ''
m.loc[mask, 'Group'] = 'Other'

Der resultierende Datenrahmen entspricht nun dem gewünschten Format. Die Schmelzfunktion bietet in Kombination mit einigen zusätzlichen Manipulationen eine flexible und effiziente Möglichkeit, Datenrahmen umzuformen.

Das obige ist der detaillierte Inhalt vonWie können Pandas und Wörterbuchmanipulation einen breiten Datenrahmen in ein aufgeräumtes Format umformen?. 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