Python是进行数据分析的一种出色语言,主要是因为以数据为中心的python软件包具有奇妙的生态系统。 Pandas是其中的一种,使导入和分析数据更加容易。
Pandas dataframe.melt()
函数取消将DataFrame从宽格式转为长格式,可以选择保留标识符变量。此函数对于将DataFrame按摩成一种格式非常有用,其中一列或多列是标识符变量(id_vars),而所有其他列(被视为测量变量(value_vars))在行轴上均为“unpivoted”,仅留下两个非标识符列, “变量”和“值”。
用法:DataFrame.melt(id_vars=None, value_vars=None, var_name=None, value_name=’value’, col_level=None)
参数:
frame: DataFrame
id_vars: Column(s) to use as identifier variables
value_vars: Column(s) to unpivot. If not specified, uses all columns that are not set as id_vars.
var_name: Name to use for the ‘variable’ column. If None it uses frame.columns.name or ‘variable’.
value_name: Name to use for the ‘value’ column
col_level: If columns are a MultiIndex then use this level to melt.
返回值:DataFrame变成一种格式,其中一列或多列是标识符变量
范例1:采用melt()
函数将“A”列设置为标识符变量,将“B”列设置为值变量。
# importing pandas as pd
import pandas as pd
# Creating the dataframe
df = pd.DataFrame({"A":[12, 4, 5, 44, 1],
"B":[5, 2, 54, 3, 2],
"C":[20, 16, 7, 3, 8],
"D":[14, 3, 17, 2, 6]})
# Print the dataframe
df
让我们使用dataframe.melt()
函数将“A”列设置为标识符变量,将“B”列设置为值变量。
# function to unpivot the dataframe
df.melt(id_vars =['A'], value_vars =['B'])
输出:
范例2:采用melt()
函数将“A”列设置为标识符变量,将“B”和“C”列设置为值变量。还可以自定义值列和变量列的名称。
# importing pandas as pd
import pandas as pd
# Creating the dataframe
df = pd.DataFrame({"A":[12, 4, 5, 44, 1],
"B":[5, 2, 54, 3, 2],
"C":[20, 16, 7, 3, 8],
"D":[14, 3, 17, 2, 6]})
# Print the dataframe
df
让我们使用dataframe.melt()
函数将“A”列设置为标识符变量,将“B”和“C”列设置为值变量。
# function to unpivot the dataframe
# We will also provide a customized name to the value and variable column
df.melt(id_vars =['A'], value_vars =['B', 'C'],
var_name ='Variable_column', value_name ='Value_column')
输出:
相关用法
- Python pandas.map()用法及代码示例
- Python Pandas Series.str.len()用法及代码示例
- Python Pandas.factorize()用法及代码示例
- Python Pandas TimedeltaIndex.name用法及代码示例
- Python Pandas dataframe.ne()用法及代码示例
- Python Pandas Series.between()用法及代码示例
- Python Pandas DataFrame.where()用法及代码示例
- Python Pandas Series.add()用法及代码示例
- Python Pandas.pivot_table()用法及代码示例
- Python Pandas Series.mod()用法及代码示例
- Python Pandas Dataframe.at[ ]用法及代码示例
- Python Pandas Dataframe.iat[ ]用法及代码示例
- Python Pandas.pivot()用法及代码示例
- Python Pandas dataframe.mul()用法及代码示例
- Python Pandas.melt()用法及代码示例
注:本文由纯净天空筛选整理自Shubham__Ranjan大神的英文原创作品 Python | Pandas dataframe.melt()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。