1. #coding=utf-8
  2. # pip install xlrd
  3.  
  4. import xlrd
  5. def read_from_xls(filepath,index_col_list):
  6. #filepath:读取文件路径,例如:filepath = r'D:/Python_workspace/test.xlsx'
  7.   #index_col_list:读取列的索引列表,例如第一、二、三、四列为:[1,2,3,4]
  8. # 设置GBK编码
  9. xlrd.Book.encoding = "gbk"
  10. rb = xlrd.open_workbook(filepath)
  11. #print(rb)
  12.  
  13. sheet = rb.sheet_by_index(0) #表示Excel的第一个Sheet
  14. nrows = sheet.nrows
  15. data_tmp_x = [] #例如数据为x,y,z坐标数据
  16. data_tmp_y = []
  17. data_tmp_z = []
  18. for index_col in index_col_list: #依次选择第index_col列
  19. for i in range(nrows):
  20. tt=i+1 #读取第tt行,除去第一行的列名
  21. if tt >= nrows:
  22. break
  23. else:
  24. tmp = float(sheet.cell_value(tt,index_col)) #读取第几行第几列的数据内容
  25. if index_col == 2:
  26. data_tmp_x.append(tmp)
  27. elif index_col == 3:
  28. data_tmp_y.append(tmp)
  29. elif index_col == 4:
  30. data_tmp_z.append(tmp)
  31. data_tmp = np.mat([data_tmp_x,data_tmp_y,data_tmp_z])
  32. return data_tmp
  33.  
  34. # 使用pandas读取excel
  35. # filepath: xlsx文件路径名
  36. import pandas as pd
  37. data = pd.read_excel(filepath)
  38. province_name = data['province'].values.tolist() # province为列名,结果形成列表
  39. province_people = data['count'].values.tolist()

-------- pandas读取excel —— pd.read_excel --------

部分参数说明:

  1. def read_excel(io,
  2. sheet_name=0,
  3. header=0,
  4. names=None,
  5. index_col=None,
  6. usecols=None,
  7. squeeze=False,
  8. dtype=None,
  9. engine=None,
  10. converters=None,
  11. true_values=None,
  12. false_values=None,
  13. skiprows=None,
  14. nrows=None,
  15. na_values=None,
  16. parse_dates=False,
  17. date_parser=None,
  18. thousands=None,
  19. comment=None,
  20. skipfooter=0,
  21. convert_float=True,
  22. **kwds)

io:excel文件路径

sheet_name:string, int, mixed list of strings/ints, or None, default 0,sheet表名

  1. * Defaults to 0 -> 1st sheet as a DataFrame
  2. * 1 -> 2nd sheet as a DataFrame
  3. * "Sheet1" -> 1st sheet as a DataFrame
  4. * [0,1,"Sheet5"] -> 1st, 2nd & 5th sheet as a dictionary of DataFrames
  5. * None -> All sheets as a dictionary of DataFrames

header:指定作为列名的行,默认为0,即取第一行作为列名;若数据不含列名,则设定 header = None

names:可用列表等参数指定列名序列,如果没有列名,则需要先设置 header=None;如果只有一列,需要设置为列表形式,例如:['第一列'],否则会出现错误:TypeError: Index(...) must be called with a collection of some kind

  1. names : array-like, default None
  2. List of column names to use. If file contains no header row,
  3. then you should explicitly pass header=None

index_col:以某一列作为行标签,也就是行索引

skiprows:从头开始跳过的行数,可以传列表

skipfooter:省略从末尾开始的行数

na_values:识别NA/NaN数据,并替换为该值

  1. na_values : scalar, str, list-like, or dict, default None
  2. Additional strings to recognize as NA/NaN. If dict passed, specific
  3. per-column NA values. By default the following values are interpreted
  4. as NaN: '""" + fill("', '".join(sorted(_NA_VALUES)), 70, subsequent_indent=" ") + """'.

squeeze:当传入数据只有一列时,返回序列Series,而不是Dataframe数据

  1. squeeze : boolean, default False
  2. If the parsed data only contains one column then return a Series

nrows:要解析的行数

  1. nrows : int, default None
  2. Number of rows to parse
  3.  
  4. .. versionadded:: 0.23.0
  1. ## 欢迎有错误进行指正,也可交流改进

Python使用xlrd、pandas包从Excel读取数据的更多相关文章

  1. 沉淀,再出发:python中的pandas包

    沉淀,再出发:python中的pandas包 一.前言 python中有很多的包,正是因为这些包工具才使得python能够如此强大,无论是在数据处理还是在web开发,python都发挥着重要的作用,下 ...

  2. Python数据分析:pandas玩转Excel (二)

    1 对Excel文件的操作 方法一: 使用xlrd库或者xlwt库进行对excel表格的操作读与写: 方法二: pandas库同样支持excel的读写操作:且更加简便. 2 pd.read_excel ...

  3. Python之路-pandas包的详解与使用

    什么是pandas pandas是一种Python数据分析的利器,是一个开源的数据分析包,最初是应用于金融数据分析工具而开发出来的,因此pandas为时间序列分析提供了很好的支持.pandas是PyD ...

  4. TestNG参数化测试之Excel读取数据

    1.新建Excel文档,准备好测试数据 在当前工程的resources目录下,新建文件名为testdata的Excel文档 打开Excel,将当前sheet重命名为calculator,构造num1. ...

  5. Jmeter 5.1 从excel读取数据执行接口自动化

    思路:数据在excel文件中进行维护,然后转换成csv格式,jme中读取数据执行: 1.将接口各数据在excel文件中进行维护,然后存为csv格式,我的数据如下: 2.jmeter脚本,配置csv文件 ...

  6. python第二十九课——文件读写(读取数据操作)

    演示读取数据操作:path=r'a.txt' 1.打开文件f1=open(path,'r') 2.读取数据content1=f1.read(3)print(content1) content1=f1. ...

  7. python之从文件中按行读取数据

    #!/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = 'jiangwenwen' # 从文件中按行读取数据 file = open(& ...

  8. python使用xlrd和xlwt读写Excel文件

    版权声明:本文为博主原创文章,未经允许不得转载. 安装模块 如果使用的是Linux系统,并且安装了pip,可以直接使用pip安装xlrd, xlwt: pip install xlwt pip ins ...

  9. Python数据分析:pandas玩转Excel (一)

    目录 1 pandas简介 2 导入 3 使用 4 读取.写入 1 pandas简介 1.Pandas是什么? Pandas是一个强大的分析结构化数据的工具集: 它的使用基础是Numpy(提供高性能的 ...

随机推荐

  1. 【k8s secret token 删掉自动重建】kubernetes secret 和 serviceaccount

    https://stackoverflow.com/questions/54354243/kubernetes-secret-is-persisting-through-deletes

  2. sonar:查询全部项目的bug和漏洞总数(只查询阻断/严重/主要级别)

    1.统计所有项目主要以上的漏洞和bug -- 统计所有项目主要以上的漏洞和bug ,) AND severity IN('BLOCKER','CRITICAL','MAJOR') 2.统计所有某个项目 ...

  3. 常见问题:MySQL/排序

    MySQL的排序分为两种,通过排序操作和按索引扫描排序. 按索引顺序扫描是一种很高效的方式,但使用的条件较为严格,只有orderby语句使用索引最左前列,或where语句与orderby语句条件列组合 ...

  4. flask 编码问题

    在我们的flask项目中,通过表单提交对数据库进行更新的时候,数据提交不成功,提示以下内容: sqlalchemy.exc.InternalError: (pymysql.err.InternalEr ...

  5. python 爬虫实例(三)

    问题描述 爬取博客园的首页数据URL[https://home.cnblogs.com/blog/page/1/],之后写到自己的Excel里面 环境: OS:Window10 python:3.7 ...

  6. docker 使用阿里云镜像加速

    1.登录阿里云 2.进入控制台 3.搜索 “容器镜像服务” 下拉点击 “镜像加速器” 复制自己的私有地址 进入自己的docker宿主机器(替换下面的地址为自己的私有地址) 修改daemon配置文件/e ...

  7. mysql 事物控制语言

    事务控制语言(DTL)    什么是事务        通常,在此之前,我们说,一条语句使用一个分号(;)来结束,并得到执行.        那么我们说,这个“一次性执行”的过程,可以称为“一个事务” ...

  8. 开源软件“meld”-替代beyond compare -- & 放在linux命令后面真好用

    1, 使用技巧 命令行直接对比文件 meld dir1 dir2 & 亦可以直接打开界面进行类似beyondCompare的操作. { & 放在命令后面表示设置此进程为后台进程 默认情 ...

  9. hadoop 集群调优实践总结

    调优概述# 几乎在很多场景,MapRdeuce或者说分布式架构,都会在IO受限,硬盘或者网络读取数据遇到瓶颈.处理数据瓶颈CPU受限.大量的硬盘读写数据是海量数据分析常见情况. IO受限例子: 索引 ...

  10. java当中JDBC当中请给出一个sql server的stored procedure例子

    3.sql server的stored procedure例子: import java.sql.*;public class StoredProc0 {public static void main ...