pandas.DataFrame.to_dict()
是 Pandas DataFrame 中的一个方法,用于将 DataFrame 转换为 Python 字典对象。该方法可以将 DataFrame 的行或列,或者整个 DataFrame 以合适的维度转换成字典。在 Pandas 数据处理过程中,将 DataFrame 转换为字典非常有用。下面是该方法的详细说明及其使用方法攻略。
作用
pandas.DataFrame.to_dict()
可以将 DataFrame 转换为各种字典格式:
- 当参数
orient='dict'
时,产生一个基于列名为键、每列数据为值的字典。这是 to_dict 的默认参数设置。 - 当参数
orient='list'
时,产生一个基于行索引为键、行数据为值的字典。 - 当参数
orient='series'
时,产生一个基于列名为键、每列转换为 pandas.Series 对象的字典。 - 当传递其他或自定义的 orient 时,产生不同的字典格式。
在使用过程中,to_dict()方法可以轻松地将Pandas DataFrame转为Python的字典,便于数据分析,字典实现了一种高效访问稀疏的数据结构。
使用方法
下面是对 pandas.DataFrame.to_dict()
的使用方法:
DataFrame.to_dict(self, orient='dict', into=<class 'dict'>)
orient
:可选参数,默认值为dict
,指定字典的格式,可用参数为dict
、series
、list
或split
,默认值为dict
。into
:可选参数,默认值为dict
,设置输出对象的类型,通常不需要设置此参数。一般采用默认值即可。
下面是通过2个实例了解 Pandas DataFrame 的 to_dict()
方法。
示例1
import pandas as pd
df = pd.DataFrame({'name': ['Alice', 'Bob'], 'age': [25, 30]})
print(df.to_dict())
输出结果:
{'name': {0: 'Alice', 1: 'Bob'}, 'age': {0: 25, 1: 30}}
分析:默认情况下, to_dict() 方法会将列名作为字典的键,每一列的数据将会以 key-value 形式输出。
示例2
import pandas as pd
df = pd.DataFrame({'name': ['Alice', 'Bob'], 'age': [25, 30]})
print(df.to_dict('list'))
输出结果:
{'name': ['Alice', 'Bob'], 'age': [25, 30]}
分析:参数orient
的值为’list‘时,将行转成一个字典值的列表,输出结果就是将每行数据转成一个字典,在放到一个列表中。可以看出,字典的 key 是行的索引,value 是一个数组。