Die Funktion Pandas.melt() dient dazu ausdrehen den DataFrame von einem Breitformat in ein Langformat.
Seine Hauptaufgabe besteht darin, einen DataFrame in ein Format zu überführen, in dem einige Spalten Bezeichnervariablen sind und die übrigen Spalten als gemessene Variablen betrachtet werden und nicht auf der Zeilenachse ausgerichtet sind. Es bleiben nur zwei Nicht-Bezeichnerspalten übrig, Variable und Wert.
Syntax
pandas.melt(frame, id_vars=None, value_vars=None, var_name=None, value_name='value', col_level=None)
Parameter
Kehrt zurück
Es gibt den nichtpivotierten DataFrame als Ausgabe zurück.
Beispiel
# importing pandas as pd import pandas as pd # creating a dataframe info = pd.DataFrame({'Name': {0: 'Parker', 1: 'Smith', 2: 'John'}, 'Language': {0: 'Python', 1: 'Java', 2: 'C++'}, 'Age': {0: 22, 1: 30, 2: 26}}) # Name is id_vars and Course is value_vars pd.melt(info, id_vars =['Name'], value_vars =['Language']) info
Ausgabe
Name Language Age 0 Parker Python 22 1 Smith Java 30 2 John C++ 26
Beispiel2
import pandas as pd info = pd.DataFrame({'A': {0: 'p', 1: 'q', 2: 'r'}, 'B': {0: 40, 1: 55, 2: 25}, 'C': {0: 56, 1: 62, 2: 42}}) pd.melt(info, id_vars=['A'], value_vars=['C']) pd.melt(info, id_vars=['A'], value_vars=['B', 'C']) pd.melt(info, id_vars=['A'], value_vars=['C'], var_name='myVarname', value_name='myValname')
Ausgabe
A myVarname myValname 0 p C 56 1 q C 62 2 r C 42