【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类下 ...
随机推荐
- npm国内镜像
国内使用默认的源安装较慢,镜像使用方法(三种办法任意一种都能解决问题,建议使用第三种,将配置写死,下次用的时候配置还在): 1.通过config命令 npm config set registry h ...
- 使用apktool.jar工具反编译和回编译Android APK 终端命令模式
1.工具准备 工具可以网上搜索下载新版本,也可以从这里Download:https://github.com/FlymeOS/tools/blob/lollipop-5.1/reverses/apkt ...
- tcp 三次握手 转
转载 记得刚毕业找工作面试的时候,经常会被问到:你知道“3次握手,4次挥手”吗?这时候我会“胸有成竹”地“背诵”前期准备好的“答案”,第一次怎么怎么,第二次……答完就没有下文了,面试官貌似也没有深入下 ...
- react获取当前页面的url参数
react获取当前页面的url参数,必须在url路由对应的组件上获取,在子组件上获取不到,为undefined,获取形如 /news/:id 的后面的参数 id this.props.match. ...
- JS中lambda表达式的优缺点和使用场景(转)
add by zhj: 最近在看ES6,看到了箭头函数,我个人感觉箭头函数适用于函数体中不用this的匿名函数,在箭头函数中使用this是一个坑 原文:http://ourjs.com/detail/ ...
- [Full-stack] 世上最好语言 - PHP
前言 本篇是对个人PHP, Laravel系列博文的总结与思考. 目的在于理清并熟练如下过程: "需求 --> Usercase --> UI --> 框架 --> ...
- 基于IOS上MDM技术相关资料整理及汇总
(转自:http://www.mbaike.net/special/1542.html) 一.MDM相关知识:MDM (Mobile Device Management ),即移动设备管理.在21世纪 ...
- 国内常用NTP服务器地址及
210.72.145.44 (国家授时中心服务器IP地址) 133.100.11.8 日本 福冈大学 time-a.nist.gov 129.6.15.28 NIST, Gaithersburg, M ...
- xss攻击问题以及如何防范
当用户提交评论的时候,比如如下评论内容 111 <scripy>alert(111);</scripy> 这样当现实评论的时候会先弹出111弹框,再显示评论.这就是xss攻击. ...
- java封装实现Excel建表读写操作
对 Excel 进行读写操作是生产环境下常见的业务,网上搜索的实现方式都是基于POI和JXL第三方框架,但都不是很全面.小编由于这两天刚好需要用到,于是就参考手写了一个封装操作工具,基本涵盖了Exce ...