方法详解:
pandas.melt(frame, id_vars=None, value_vars=None, var_name=None, value_name=‘value‘, col_level=None
“Unpivots” a DataFrame from wide format to long format, optionally leaving identifier variables set.
如何理解Unpivots其实就是列转行。
This function is useful to massage a DataFrame into a format where one or more columns are identifier variables (id_vars)
, while all other columns, considered measured variables (value_vars)
, are “unpivoted” to the row axis, leaving just two non-identifier columns, ‘variable’ and ‘value’.
id_vars : tuple, list, or ndarray, optional
Column(s) to use as identifier variables.其实就是作为主键
value_vars : tuple, list, or ndarray, optional
Column(s) to unpivot. If not specified, uses all columns that are not set as id_vars.对那些字段进行转列且返回数据只有该字段的数据。
var_name : scalar
Name to use for the ‘variable’ column. If None it uses frame.columns.name
or ‘variable’.对行专列的后,多个列名组成的列用什么名字?默认用variable
value_name : scalar, default ‘value’.
Name to use for the ‘value’ column.对行专列的后,多个列名下的值组成的列用什么名字?默认用value
col_level : int or string, optional
If columns are a MultiIndex then use this level to melt.
原文:https://www.cnblogs.com/wqbin/p/12782058.html