pandas应用——读excel和DataFrame转字典

1.读excel表的方法:read_excel()

重要参数
sheetname:选择要读的sheet

index_col: 定义某一列为索引,参数的值是列名。

例子:

import pandas as pd
df = pd.read_excel('excel_file.xlsx', sheetname='sheet1', index_col='col_1')

2.DataFrame转dict类型

DataFrame对象的一个方法to_dict可以完成,以索引为key,以列为value。
如果有一个DataFrame对象df,df包含“col1”和“col2”两列,那么to_dict生成的一个两层的dict,第一层是列名为key,第二层以index列的值为key,以列值为value。
官网例子:

>>> df = pd.DataFrame(
        {'col1': [1, 2], 'col2': [0.5, 0.75]}, index=['a', 'b'])
>>> df
   col1  col2
a     1   0.1
b     2   0.2
>>> df.to_dict()
{'col1': {'a': 1, 'b': 2}, 'col2': {'a': 0.5, 'b': 0.75}}

to_dict转成两层的dict对象,可通过列名选择其中索引和该列组成的dict,如

>>> df.to_dict()['col1']
{'a': 1, 'b': 2}

同时,内层的对象类型可选择,选择范围:

orient : str {‘dict’, ‘list’, ‘series’, ‘split’, ‘records’, ‘index’}

官网例子:

>>> df.to_dict('series')
{'col1': a    1
b    2
Name: col1, dtype: int64, 'col2': a    0.50
b    0.75
Name: col2, dtype: float64}
>>> df.to_dict('split')
{'columns': ['col1', 'col2'],
'data': [[1.0, 0.5], [2.0, 0.75]],
'index': ['a', 'b']}
>>> df.to_dict('records')
[{'col1': 1.0, 'col2': 0.5}, {'col1': 2.0, 'col2': 0.75}]
>>> df.to_dict('index')
{'a': {'col1': 1.0, 'col2': 0.5}, 'b': {'col1': 2.0, 'col2': 0.75}}

3.Dataframe除了to_dict转字典,还可转很多别的类型

to_excel、to_csv、to_sql、to_pickle等,好多,用的时候在环境下建一个对象,从提示方法中即可找到。## 标题 ##

猜你喜欢

转载自blog.csdn.net/juanjuan1314/article/details/79154290
今日推荐