pyspark.pandas.melt

pyspark.pandas。 融化 ( 框架:pyspark.pandas.frame.DataFrame,id_vars:联盟(任何元组(,…),列表(联盟[任何元组[,…]]],没有)=没有一个,value_vars:联盟(任何元组(,…),列表(联盟[任何元组[,…]]],没有)=没有一个,var_name:联盟(str,列表(str),没有一个)=没有一个,value_name:str=“价值” )→pyspark.pandas.frame.DataFrame

透视的DataFrame宽格式长格式,选择离开标识符变量集。

这个函数是有用的按摩DataFrame格式在一个或多个列标识符变量(id_vars),而所有其他列,考虑测量变量(value_vars),是“透视”行轴,只留下两个non-identifier列,“变量”和“价值”。

参数
框架 DataFrame
id_vars 元组、列表或ndarray,可选的

列(s)作为标识符变量。

value_vars 元组、列表或ndarray,可选的

列(s)透视。如果不指定,不设置为使用所有列id_vars

var_name 标量,默认“变量”

名称使用变量的列。如果没有使用frame.columns.name或“变量”。

value_name 标量,默认的“价值”

使用“价值”列名称。

返回
DataFrame

透视DataFrame。

例子

> > >df=psDataFrame({“一个”:{0:“一个”,1:“b”,2:“c”},“B”:{0:1,1:3,2:5},“C”:{0:2,1:4,2:6}},=(“一个”,“B”,“C”])> > >dfA B C0 1 21 b 3 42 c 5 6
> > >ps融化(df)变量值0一个1 B 12 C 23 b4 B 35 C 46 c7 B 58 C 6
> > >df融化(id_vars=“一个”)一个变量值0 B 11 C 22 b b 33 b C 44 c B 55 c c 6
> > >df融化(value_vars=“一个”)变量值0一个1一个b2 c
> > >ps融化(df,id_vars=(“一个”,“B”])B变量值0 1 C 21 b 3 C 42 c 5 c 6
> > >df融化(id_vars=(“一个”),value_vars=(“C”])一个变量值0 C 21 b C 42 c c 6

“变量”和“价值”的名字列可以定制:

> > >ps融化(df,id_vars=(“一个”),value_vars=(“B”),var_name=“myVarname”,value_name=“myValname”)一个myVarname myValname0 B 11 b b 32 c B 5