Pandas DataFrame的pivot()和unstack()函数
Pandas DataFrame是用于数据分析的非常有用的工具,它可以帮助我们快速地实现行列转换。其中,pivot()函数和unstack()函数是用于实现行列转换的两个重要函数。
pivot()函数的使用方法
pivot()函数是用于将数据从行转换为列的函数,它可以将一个DataFrame的行转换为列,也可以将一个DataFrame的列转换为行。它的语法如下:
DataFrame.pivot(index, columns, values)
其中,index参数表示要转换的行,columns参数表示要转换的列,values参数表示要转换的值。
下面是一个示例:
import pandas as pd df = pd.DataFrame({'A': ['one', 'one', 'two', 'two'], 'B': ['a', 'b', 'a', 'b'], 'C': [1, 2, 3, 4]}) df.pivot(index='A', columns='B', values='C')
上面的代码将DataFrame的行A转换为列,将DataFrame的列B转换为行,将DataFrame的值C转换为值,最终结果如下:
B a b A one 1 2 two 3 4
unstack()函数的使用方法
unstack()函数是用于将数据从列转换为行的函数,它可以将一个DataFrame的列转换为行,也可以将一个DataFrame的行转换为列。它的语法如下:
DataFrame.unstack(level=-1, fill_value=None)
其中,level参数表示要转换的列,fill_value参数表示填充值。
下面是一个示例:
import pandas as pd df = pd.DataFrame({'A': ['one', 'one', 'two', 'two'], 'B': ['a', 'b', 'a', 'b'], 'C': [1, 2, 3, 4]}) df.unstack(level='B', fill_value=0)
上面的代码将DataFrame的列B转换为行,将DataFrame的值C转换为值,最终结果如下:
A a one 1 b one 2 a two 3 b two 4
Pandas DataFrame的pivot()和unstack()函数可以帮助我们快速地实现行列转换。pivot()函数是用于将数据从行转换为列的函数,它的语法为DataFrame.pivot(index, columns, values),其中,index参数表示要转换的行,columns参数表示要转换的列,values参数表示要转换的值。unstack()函数是用于将数据从列转换为行的函数,它的语法为DataFrame.unstack(level=-1, fill_value=None),其中,level参数表示要转换的列,fill_value参数表示填充值。