牛叔叔 的笔记

好好学习

2021-08-06 15:24

Python中使用Pandas库读取excel 文件

牛叔叔

Python

(874)

(0)

收藏

Pandas 是 Python 语言的一个扩展程序库,用于数据分析。

Pandas 一个强大的分析结构化数据的工具集,基础是 Numpy(提供高性能的矩阵运算)。

Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。

Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征。

Pandas 广泛应用在学术、金融、统计学等各个数据分析领域。


使用Pandas操作Excel文件,相对比较简单。


1、首先需要安装Pandas,可以直接使用pip命令安装:

pip install pandas
Collecting pandas
  Downloading pandas-1.3.1-cp37-cp37m-win_amd64.whl (10.1 MB)
     |████████████████████████████████| 10.1 MB 77 kB/s
Requirement already satisfied: pytz>=2017.3 in d:\pythonworks\wmpythondemo\lib\site-packages (from pandas) (2020.5)
Requirement already satisfied: numpy>=1.17.3 in d:\pythonworks\wmpythondemo\lib\site-packages (from pandas) (1.19.5)
Requirement already satisfied: python-dateutil>=2.7.3 in d:\pythonworks\wmpythondemo\lib\site-packages (from pandas) (2.8.1)
Requirement already satisfied: six>=1.5 in d:\pythonworks\wmpythondemo\lib\site-packages (from python-dateutil>=2.7.3->pandas) (1.15.0)

Installing collected packages: pandas
Successfully installed pandas-1.3.1

另外需要安装xlrd

pip install xlrd
Collecting xlrd
  Downloading xlrd-2.0.1-py2.py3-none-any.whl (96 kB)
     |████████████████████████████████| 96 kB 384 kB/s
Installing collected packages: xlrd
Successfully installed xlrd-2.0.1


2、读取Excel文件

一行代码搞定:

#读取excel文件
import pandas as pd
data = pd.read_excel('e:/data/万码课程.xls',sheet_name=0)
print(data.head())

打印结果如下:

   序号     课程方向  学员数量 授课老师   课时
0   1     Java   300  袁老师  600
1   2      WEB   180  王老师  500
2   3   Python   110  陆老师  580
3   4  Android    90  孙老师  700
4   5      C++    40  张老师  400

excel 文件实际内容为:

image.png


代码read_excel()中的sheet_name=0是指读取excel文件中的哪一个sheet,按照顺序写索引即可读取不同的Sheet内容,也可以传递Sheet的名字。

比如:

data = pd.read_excel('e:/data/万码课程.xls',sheet_name='Sheet1')

sheet_name可以是str,int,list,或None,默认0,字符是表示的是该表的名字,数字表示的是表的位置(从0开始),数字和字符是请求单个表格;列表形式的是请求多个表格。赋值为None是请求全部的表格。


所返回的数据为pandas.core.frame.DataFrame类型,对其可以进行各种数据操作。

比如:

print(data['课程方向'])

打印出课程方向这一列数据

0       Java
1        WEB
2     Python
3    Android
4        C++
5        区块链
6        物联网
7       人工智能
Name: 课程方向, dtype: object


print(data.loc[1])

获取data中行标签索引值为1的行数据(默认第一列是索引列)

序号        2
课程方向    WEB
学员数量    180
授课老师    王老师
课时      500
Name: 1, dtype: object


print(data.loc[1]['学员数量'])

获取行索引值为1的学员数量一列的值:180


其属性和方法总结如下:

DataFrame() 创建一个DataFrame对象

df.values 返回ndarray类型的对象

df.iloc[ 行序,列序 ] 按序值返回元素

df.loc[ 行索引,列索引 ] 按索引返回元素

df.index 获取行索引

df.columns 获取列索引

df.axes 获取行及列索引

df.T 行与列对调

df. info() 打印DataFrame对象的信息

df.head(i) 显示前 i 行数据

df.tail(i) 显示后 i 行数据

df.describe() 查看数据按列的统计信息



0条评论

点击登录参与评论