【python基础】利用pandas处理Excel数据
参考:https://www.cnblogs.com/liulinghua90/p/9935642.html
一、安装第三方库xlrd和pandas
1:pandas依赖处理Excel的xlrd模块,所以我们需要提前安装这个,安装命令是:pip install xlrd 2:步骤1准备好了之后,我们就可以开始安装pandas了,安装命令是:pip install pandas
数据准备,有一个Excel文件:格式为 xls 或 xlsx 或 xlt,表单名分别为:学生信息,人员信息,采购信息
其中人员信息 的表单数据如下所示:

首先导入模块:
import pandas as pd
2:读取Excel文件的几种方式:
#方法一:默认读取第一个表单
df=pd.read_excel('lemon.xlsx')
#默认读取前5行的数据
data=df.head()
print("获取到所有的值:\n{0}".format(data)) #格式化输出
#方法二:通过指定表单名的方式来读取
#可以通过sheet_name来指定读取的表单
df=pd.read_excel('lemon.xlsx',sheet_name='人员信息')
data=df.head()
print("获取到所有的值:\n{0}".format(data))#格式化输出
#方法三:通过表单索引来指定要访问的表单,0表示第一个表单
#也可以采用表单名和索引的双重方式来定位表单
#也可以同时定位多个表单,方式都罗列如下所示
df=pd.read_excel('lemon.xlsx',sheet_name=['python','student']) #可以通过表单名同时指定多个
# df=pd.read_excel('lemon.xlsx',sheet_name=0) #可以通过表单索引来指定读取的表单
# df=pd.read_excel('lemon.xlsx',sheet_name=['python',1]) #可以混合的方式来指定
# df=pd.read_excel('lemon.xlsx',sheet_name=[1,2]) #可以通过索引 同时指定多个
data=df.values #获取所有的数据,注意这里不能用head()方法哦~
print("获取到所有的值:\n{0}".format(data))#格式化输出
二、pandas操作Excel的行列
df1=pd.read_excel('201709.xls',sheet_name=0)
# data=df.head() #默认读取前5行的数据
#跳过表头从第二行开始读取,将每一行内容存放在列表中
#读取指定一行
data = df1.ix[0].values
#读取指定2、3、4行
data = df1.ix[[1,2,3]].values
print(data)
# 读取指定行列,即B2 单元格内容
data = df1.ix[0,1]
print("获取到所有的值:\n{0}".format(data))
#输出姓名列全部内容,返回列表
print("输出姓名列内容\n",df1['姓名'].values)
# 通过表单索引来指定要访问的表单,0表示第一个表单,1表示第二个表单
df2=pd.read_excel('201709.xls',sheet_name=1)
#读取第一行第二行第三行的姓名、年龄、籍贯 列的值,这里需要嵌套列表
data2 = df2.ix[[0,1,2],['姓名','年龄','籍贯']].values
#获取所有行的指定列
data2 = df2.ix[:,['姓名','年龄','籍贯']].values
#获取行号并打印输出
rows_count = df2.index.values
#获取列名并打印输出
cols_count = df2.columns.values
#获取指定行数的值(行是随机的)
print(df2.sample(3).values)
三:pandas处理Excel数据成为字典
df2=pd.read_excel('xiong.xls',sheet_name=1)
rows_data = []
for i in df2.index.values:
row_data = df2.ix[i,['姓名','年龄','民族','籍贯']].to_dict()
rows_data.append(row_data)
print(rows_data)
最终打印结果:
[{'姓名': '小米', '年龄': 21, '民族': '汉', '籍贯': '北京'}, {'姓名': '王三', '年龄': 32, '民族': '汉', '籍贯': '河南'}, {'姓名': '李四', '年龄': 22, '民族': '蒙古', '籍贯': '蒙古'}, {'姓名': '小张', '年龄': 25, '民族': '汉', '籍贯': '四川'}, {'姓名': '思思', '年龄': 23, '民族': '维吾尔', '籍贯': '新疆'}]
【python基础】利用pandas处理Excel数据的更多相关文章
- Python利用pandas处理Excel数据的应用
Python利用pandas处理Excel数据的应用 最近迷上了高效处理数据的pandas,其实这个是用来做数据分析的,如果你是做大数据分析和测试的,那么这个是非常的有用的!!但是其实我们平时在做 ...
- [Pandas]利用Pandas处理excel数据
Python 处理excel的第三包有很多,比如XlsxWriter.xlrd&xlwt.OpenPyXL.Microsoft Excel API等,最后综合考虑选用了Pandas. Pand ...
- pandas玩转excel-> (2)如何利用pandas读取excel数据文件
import pandas as pd #将excel文件读到内存中,形成dataframe,并命名为peoplepeople=pd.read_excel('D:/python结果/task2/Peo ...
- pandas玩转excel-> (1)如何利用pandas创建excel数据文件
#在Anaconda3 的Spyder中 #定义pandas模块为pd import pandas as pd #创建一个新的DataFrame对象,定义这个对象中有两个字段:ID和Name, ...
- 【Python自动化Excel】pandas处理Excel数据的基本流程
这里所说的pandas并不是大熊猫,而是Python的第三方库.这个库能干嘛呢?它在Python数据分析领域可是无人不知.无人不晓的.可以说是Python世界中的Excel. pandas库处理数据相 ...
- Python数据分析之Pandas读写外部数据文件
1 引言 数据分析.数据挖掘.可视化是Python的众多强项之一,但无论是这几项中的哪一项都必须以数据作为基础,数据通常都存储在外部文件中,例如txt.csv.excel.数据库.本篇中,我们来捋一捋 ...
- 机器学习之数据预处理,Pandas读取excel数据
Python读写excel的工具库很多,比如最耳熟能详的xlrd.xlwt,xlutils,openpyxl等.其中xlrd和xlwt库通常配合使用,一个用于读,一个用于写excel.xlutils结 ...
- 利用pandas读取Excel表格,用matplotlib.pyplot绘制直方图、折线图、饼图
利用pandas读取Excel表格,用matplotlib.pyplot绘制直方图.折线图.饼图 数据: 折线图代码: import pandas as pdimport matplotlib. ...
- 利用PHPExcel 实现excel数据的导入导出(源码实现)
利用PHPExcel 实现excel数据的导入导出(源码实现) 在开发过程中,经常会遇到导入导出的需求,利用phpexcel类实现起来也是比较容易的,下面,我们一步一步实现 提前将phpexcel类下 ...
随机推荐
- var_dump
1:var_dump 主要输出类型和.长度和变量的值: 2: var_dump() 能打印出类型print_r() 只能打出值echo() 是正常输出...需要精确调试的时候用 var_dump(); ...
- 从去除毛刺的策略看开运算opening_circle和闭运算closing_circle的异同
例一:毛刺在往外凸的面上 策略1:分割出黑色部分,然后通过开运算去掉毛刺,再通过原黑色部分区域减去开运算之后的区域,得到毛刺部分的区域. read_image (Tu, 'C:/Users/xiahu ...
- centos下安装Loadrunner
背景: 网上的资料呀,真是浑水摸鱼的多,有些人直接拷贝别人的帖子,这样有啥意思呢,只会让别人要搜索的时候,更扰乱些! 这里我不写步骤,我用shell把步骤弄了一下,看的懂的看,看不懂的留言吧.就酱,看 ...
- centos7 修改root密码方式
1 - 在启动grub菜单,选择编辑选项启动 2 - 按键盘e键,来进入编辑界面 3 - 找到Linux 16的那一行,将ro改为rw init=/sysroot/bin/sh 4 - 现在按下 Co ...
- Mac mysql 修改密码
如果你知道密码: mysqladmin -u root -p password 新密码 MYSQL数据库密码忘记: 1. 在系统偏好 中,中止MYSQL服务.: 2. cd/usr/local/mys ...
- linux环境中,多个命令之间,通过&& ||执行,命令之间执行的逻辑是什么?
需求描述: 最近在写一个脚本的时候,要判断一个文件是否存在,有怎么样,没有就创建,这个时候 看到了一个test 结合 || 或者 &&的写法,就查看了下资料记录下是怎么个玩法. 操作过 ...
- 网络编程 -- RPC实现原理 -- RPC -- 迭代版本V3 -- 远程方法调用 整合 Spring
网络编程 -- RPC实现原理 -- 目录 啦啦啦 V3——RPC -- 远程方法调用 及 null的传输 + Spring 服务提供商: 1. 配置 rpc03_server.xml 注入 服务提供 ...
- eclipse去掉所有断点 恢复到默认窗口
1.去掉所有断点 Window->Open Perspective->Debug默认是右上角的窗口中,切换到Breakpoints,如果里边有内容,那就是设置断点啦,点叉叉全部删掉就好了. ...
- 【zheng环境准备】安装redis
1.下载源码,解压缩后编译源码 wget http://download.redis.io/release/redis-2.8.3.tar.gz tar -xzf redis-.tar.gz cd r ...
- 部门sonarque代码扫描测试服务器docker化
部门内部的服务器太多了,打算将对应的测试环境docker化. 转成docker后,以后不管是升级调研还是定制化开发测试都方便,就是事情太多,一直没有抽出身来做,今天处理下并把过程记录下来跟大家分享下. ...