panda读取Excel
pandas读取Excel的第一种方法
方法一:默认读取第一个表单
import pandas
print("\n方法一:")
xls_data=pd.read_excel('ceshi.xlsx',index_col='序列') #index_col 分行编号
这个会直接默认读取到这个Excel的第一个表单
print(xls_data.head()) #默认读取前5行的数据
print("输出:\n{0}".format(xls_data.head()))#格式化输出
方法二:通过指定表单名的方式来读取
print("\n方法二:")
df=pd.read_excel('ceshi.xlsx',sheet_name='Sheet2')
data=df.head() #默认读取前5行的数据
print("获取到所有的值:\n{0}".format(data))#格式化输出
方法三:通过表单索引来指定要访问的表单,0表示第一个表单
也可以采用表单名和索引的双重方式来定位表单
也可以同时定位多个表单,方式都罗列如下所示
print("\n方法三:")
df=pd.read_excel('ceshi.xlsx',sheet_name=['Sheet1','Sheet2'])
可以通过表单名同时指定多个--不推荐使用,效果不好
df=pd.read_excel('ceshi.xlsx',sheet_name=['Sheet2',0])
可以混合的方式来指定--不推荐使用,效果不好
df=pd.read_excel('ceshi.xlsx',sheet_name=1)
可以通过表单索引来指定读取的表单--列表形式
df=pd.read_excel('ceshi.xlsx',sheet_name=[0,1])
可以通过索引 同时指定多个--不推荐使用,效果不好
data=df.values #获取所有的数据,注意这里不能用head()方法哦~
print("获取到所有的值:\n{0}".format(data))#格式化输出
以上读取的数据是一个二维矩阵,不利于处理自动化测试,
pandas操作Excel的行列
print("\npandas操作Excel的行列")
1:读取指定的单行,数据会存在列表里面
df=pd.read_excel('ceshi.xlsx')
data1=df.loc[0].values #0表示第一行 这里读取数据并不包含表头,要注意哦!
print("读取指定的单行数据:\n{0}".format(data1))
print("\n2:读取指定的多行,数据会存在嵌套的列表里面:")
2:读取指定的多行,数据会存在嵌套的列表里面:
df=pd.read_excel('ceshi.xlsx')
data2=df.loc[[1,2]].values
print("读取指定的多行数据:\n{0}".format(data2))
print("\n3:读取指定的行列")
3:读取指定的行列:
df=pd.read_excel('ceshi.xlsx')
data3=df.iloc[1,2]
print("读取指定行列的数据:\n{0}".format(data3)) #dandelion-alipaymobile
4:读取指定的多行多列值:
print("\n4:读取指定的多行多列值:")
df=pd.read_excel('ceshi.xlsx',sheet_name='Sheet2')
data4=df.loc[[1,2],['姓名','年龄','性别']]
print("读取多行多列的数据:\n{0}".format(data4))
姓名 年龄 性别
1 sun 18 女
2 zhao 19 男
5:获取所有行的指定列
print("\n5:获取所有行的指定列")
df=pd.read_excel('ceshi.xlsx',sheet_name='Sheet2')
data5=df.loc[:,['姓名','年龄','性别']].values #得到的是嵌套列表
data6=df.loc[:,['姓名','年龄','性别']] #得到二维矩阵
print("获取所有行的指定列的数据:\n{0}".format(data5)) #得到的是嵌套列表
print("获取所有行的指定列的数据:\n{0}".format(data6)) #得到二维矩阵
6:获取行号并打印输出
print("\n6:获取行号并打印输出")
df=pd.read_excel('ceshi.xlsx',sheet_name='Sheet2')
print("输出行号列表:",df.index.values)
输出行号列表: [0 1 2 3 4 5 6]
7:获取列名并打印输出
print("\n7:获取列名并打印输出")
df=pd.read_excel('ceshi.xlsx',sheet_name='Sheet2')
print("输出标题:",df.columns.values)
输出标题: ['姓名' '年龄' '性别' '出生日期']
8:随机获取几行数的值:
print("\n8:获取指定行数的值:")
df=pd.read_excel('ceshi.xlsx',sheet_name='Sheet2')
print("输出值:\n",df.sample(3).values) #随机抽取3行查看,这个方法类似于head()方法以及df.values方法
[['liu' 23 '女' '1995-05']
['wang' 17 '男' '1992-11']
['li' 20 '男' '1992-09']]
9:获取指定列的值:
print("\n9:获取指定列的值:")
df=pd.read_excel('ceshi.xlsx',sheet_name='Sheet2')
print("输出值:\n",df['姓名'].values)
pandas处理Excel数据成为字典
print("\npandas处理Excel数据成为字典")
df=pd.read_excel('ceshi.xlsx',sheet_name="Sheet2")
test_data=[]
for i in df.index.values: #获取行号的索引,并对其进行遍历:
根据i来获取每一行指定的数据 并利用to_dict转成字典
row_data=df.loc[i,['姓名','年龄','性别','出生日期']].to_dict()
test_data.append(row_data)
print(test_data)
[{'姓名': 'wang', '年龄': 17, '性别': '男', '出生日期': '1992-11'}, {'姓名': 'sun', '年龄': 18, '性别': '女', '出生日期': '1992-12'}, {'姓名': 'zhao', '年龄': 19, '性别': '男', '出生日期': '1993-01'}, {'姓名': 'zhang', '年龄': 22, '性别': '女', '出生日期': '1994-05'}, {'姓名': 'zhou', '年龄': 16, '性别': '女', '出生日期': '1992-07'}, {'姓名': 'liu', '年龄': 23, '性别': '女', '出生日期': '1995-05'}, {'姓名': 'li', '年龄': 20, '性别': '男', '出生日期': '1992-09'}]
panda读取Excel的更多相关文章
- java的poi技术读取Excel数据到MySQL
这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中. 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术可以在 ...
- poi读取excel模板,填充内容并导出,支持导出2007支持公式自动计算
/** * 版权所有(C) 2016 * @author www.xiongge.club * @date 2016-12-7 上午10:03:29 */ package xlsx; /** * @C ...
- C#读取Excel,或者多个excel表,返回dataset
把excel 表作为一个数据源进行读取 /// <summary> /// 读取Excel单个Sheet /// </summary> /// <param name=& ...
- PHP读取EXCEL时间
在使用php读取excel表格中的时间时得到一串数字而不是时间:40359.58333333334 excel 中的时间值是自1900年以来的天数,注意是格林威治时间php 中的时间值是自1970年以 ...
- Open Xml 读取Excel中的图片
在我的一个项目中,需要分析客户提供的Excel, 读出其中的图片信息(显示在Excel的第几行,第几列,以及图片本身). 网络上有许多使用Open Xml插入图片到Word,Excel的文章, 但 ...
- 使用Open xml 操作Excel系列之一-读取Excel
一. 安装Open Xml SDK 从微软网站下载Open xml SDK,安装SDK. 二. 在项目中添加对DocumentFormat.OpenXml库的引用
- 使用NPOI读取Excel报错ICSharpCode.SharpZipLib.Zip.ZipException:Wrong Local header signature
写了一个小程序利用NPOI来读取Excel,弹出这样的报错: ICSharpCode.SharpZipLib.Zip.ZipException:Wrong Local header signature ...
- C#读取Excel设置(亲测可用)
OpenFileDialog openFD = new OpenFileDialog(); openFD.FileName = ""; openFD.Filter = " ...
- 使用Aspose.Cells读取Excel
最新更新请访问: http://denghejun.github.io Aspose.Cells读取Excel非常方便,以下是一个简单的实现读取和导出Excel的操作类: 以下是Aspose.Ce ...
随机推荐
- LwIP应用开发笔记之八:LwIP无操作系统HTTP客户端
前面我们实现了TCP服务器和客户端的简单应用,接下来我们实现一个基于TCP协议的应用协议,那就是HTTP超文本传输协议 1.HTTP协议简介 超文本传输协议(Hyper Text Transfer P ...
- Docker报错“Dockerfile parse error line 1: FROM requires either one or three arguments”
看官方文档Format: 以 '#' 开头一行被视为评论,出现在其他位置视为参数. 也就不难理解报错原因:将写在同一行的注释视为参数了. 原Dockerfile: 改为:
- windows cmd命令查看端口占用进程
netstat –ano|findstr [指定端口号] 通过任务管理器杀死相关的进程 方法一:使用任务管理器杀死进程打开任务管理器->查看->选择列->然后勾选PID选项,回到任务 ...
- JavaScript基础12——运动
运动原理 运动的原理: 让某件物品沿着某种方向随着时间的变化改变位置 setInterval(function(){ obox.style.left = obox.offsetLeft+10 ...
- Spark两种内存管理
Spark动态内存管理 Spark 1.6 后改为动态内存管理(如果想启用静态内存管理,方法下面会介绍),启动动态主要体现在 存储内存和执行内存的动态.
- Spark 部署即提交模式意义解析
Spark 的官方从 Cluster Mode Overview 中,官方向我们介绍了 cluster 模式的部署方式. Spark 作为独立进程在集群上运行,他们通过 SparkContext 进行 ...
- 【POJ3126】Prime Path
本题传送门 本题知识点:宽度优先搜索 题意很简单.要找一个质数变到另一个质数的最少步数,两个质数都是4位数,变的时候只能变其中一位,变了的数也仍是质数. 思路也很简单,对每一位数进行修改,如果修改后的 ...
- Web 开发中 文件上传 是出现的:java.io.FileNotFoundException: (文件名、目录名或卷标语法不正确。)
<span style="font-family: Arial, Helvetica, sans-serif; "> </span> <span st ...
- linux Ubuntu Centos 增加 TCP 连接数
https://blog.csdn.net/c359719435/article/details/80300433 查看max conn: cat /proc/sys/net/core/somaxco ...
- eclispe: 修改所有文件默认编码为UTF-8
1.修改 workspace text file encoding 依次点击windows -> Preferences -> general -> Workspace,修改如图的编 ...