Python Pandas列转行操作(类似Hive中explode函数)
Python Pandas提供了一种列转行的操作,也就是类似Hive中的explode函数,可以将一列的数据转换成多行,以更方便的处理数据。
使用方法
Python Pandas中使用explode()函数实现列转行操作,它的语法如下:
DataFrame.explode(column)
其中column参数是要转换的列名,它可以是字符串、数字、数组等类型。
实例
下面通过一个实例来说明如何使用explode()函数实现列转行操作。
import pandas as pd # 创建一个示例DataFrame data = {'A': ['a1', 'a2', 'a3'], 'B': ['b1', ['b2', 'b3'], 'b4']} df = pd.DataFrame(data) # 打印原始DataFrame print(df) # 使用explode()函数实现列转行操作 df_explode = df.explode('B') # 打印转换后的DataFrame print(df_explode)
上面的代码中,我们创建了一个示例DataFrame,其中B列的值是一个数组,我们使用explode()函数实现了列转行操作,打印出了转换后的DataFrame,输出结果如下:
A B 0 a1 b1 1 a2 [b2, b3] 2 a3 b4 A B 0 a1 b1 1 a2 b2 1 a2 b3 2 a3 b4
可以看到,原始的DataFrame中B列是一个数组,转换后的DataFrame中,B列的数组已经被分割成了多行,每行只有一个值。
Python Pandas提供了一种列转行的操作,也就是类似Hive中的explode函数,可以将一列的数据转换成多行,以更方便的处理数据。使用方法是使用explode()函数,它的语法是DataFrame.explode(column),其中column参数是要转换的列名,它可以是字符串、数字、数组等类型。