将Pandas数据框转换为列表字典的方法
在本文中,我们将介绍如何将Pandas数据框转换为字典列表。我们将使用Pandas中的to_dict方法和DataFrame的apply方法。
阅读更多:Pandas 教程
1. to_dict方法
Pandas的to_dict方法可以将数据框转换为字典。to_dict方法可以处理不同的参数来控制输出格式。to_dict方法的语法如下:
其中orient参数可以设置输出格式,into参数可以设置输出字典的类型。orient参数可以接受以下值:
- ‘dict’ (default):输出格式为{列名:{行值:单元格值}}的字典。
- ‘list’:输出格式为[{列名1:单元格值1, 列名2:单元格值2, …}, …]的列表。
- ‘series’:输出格式为{列名: Series(行值: 单元格值, …), …}的字典。
- ‘split’:输出格式为{‘index’: [行值列表], ‘columns’: [列名列表], ‘data’: [数据值列表]}。
- ‘records’:输出格式为[{列名1:单元格值1, 列名2:单元格值2, …}, …]的列表,类似于JSON。
以下是一个例子,我们将使用to_dict方法,并将orient参数设置为’list’,into参数设置为默认的dict类型:
输出结果为:
2. apply方法
Pandas的apply方法可以让我们对数据框的每个单元格应用一个函数。apply方法的语法如下:
其中func参数是一个应用于单元格的函数,axis参数控制应用的方向,raw参数控制应用的格式,result_type参数控制输出格式。
以下是一个例子,我们将使用apply方法并将一个lambda函数应用于每个单元格,然后将结果存储为列表字典:
输出结果为:
总结
以上是将Pandas数据框转换为字典列表的两种方法:使用to_dict方法和apply方法。to_dict方法提供了多种输出格式,apply方法则可以让我们对单元格应用更多的函数并控制输出格式。选择哪种方法取决于数据框的形状和需要的输出格式。