精华内容
下载资源
问答
  • python excel数据处理

    2018-03-05 12:55:48
    前段时间做了个小项目,帮个海洋系的教授做了个数据处理的软件。基本的功能很简单,就是对Excel里面的一些数据进行过滤,统计,对多个表的内容进行合并等。之前没有处理Excel数据的经验,甚至于自己都很少用到Excel...

    前段时间做了个小项目,帮个海洋系的教授做了个数据处理的软件。基本的功能很简单,就是对Excel里面的一些数据进行过滤,统计,对多个表的内容进行合并等。之前没有处理Excel数据的经验,甚至于自己都很少用到Excel。记得《Python核心编程》的最后一章里有讲到用Win32 COM操作office, 看了一下讲的不是很清楚。google了一下找到不少能处理excel数据的模块。对比了一下最终选定了openpyxl,openpyxl专门用于处理Excel2007及以上版本产生的xlsx文件。不幸的是我所得到的数据中xls和xlsx都有,不过转换并不是什么难事,就暂时吧这个问题忽略了。

    模块的安装过程非常简单,官网上有简单的使用说明和API文档,整体来说使用非常容易,也基本能满足我的需求。对于Excel文件,我所需要的只是从中将相应位置的数据读取出来,以及把数据写入到对应的位置中去。而其间数据的处理,通过python可以很容易地完成。

    1. Excel数据的类型及组织方式
    openpyxl中定义了多种数据格式,我只涉及到了其中最重要的三种:
    NULL: 空值,对应于python中的None,表示这个cell里面没有数据。
    numberic: 数字型,统一按照浮点数来进行处理。对应于python中的float。
    string: 字符串型,对应于python中的unicode。

    每一个Excel数据文件从上至下分为三个层级的对象:
    workbook: 每一个Excel文件就是一个workbook。
    sheet: 每一个workbook中可以包含多个sheet,具体就对应Excel中我们在左下脚所看到的“sheet1”,“sheet2”等。
    cell: 每一个sheet就是我们通常所看到的一个表格,可以含有m行,n列,每个确定的行号,列号所对应的一个格子就是一个cell。

    2. 从Excel中读取数据
    从一个既有的xlsx文件中读取数据,按照Excel文件的三个层级,分别做以下三个步骤

    1. 打开workbook:

    from openpyxl import load_workbook
    wb = load_workbook('file_name.xlsx')2. 打开所需的sheet:
    我们可以这样打开workbook中的第一个sheet:

    ws = wb.get_active_sheet()变量_active_sheet_index用来确定获取哪一个sheet,而默认情况下它被置为0。
    也可以通过sheet的名称来获取sheet:

    ws = wb.get_sheet_by_name("sheet_name")openpyxl似乎没有提供按索引来读取sheet,不过我们总是能很容易地通过sheet_name来实现:

    sheet_names = wb.get_sheet_names()
    ws = wb.get_sheet_by_name(sheet_names[index])3. 获取对应cell的值:
    openpyxl提供可两种方式来读取cell,一是按照Excel的习惯用字母来代表列号,例如:

    c = ws.cell('A4').value也可以按照行号列号来读取:

    d = ws.cell(row = 3, column = 0)3. 将数据写入Excel
    同读取类似,写入一个Excel文件,要经历一下四个步骤:
    1. 新建workbook
    直接新建一个workbook对象即可:

    wb = Workbook()2. 新建sheet
    默认情况下,新创建的sheet是排在最后的,若想要创建一个排在最前的sheet,可以传入参数0:

    ws1 = wb.create_sheet()  # insert at the end
    ws2 = wb.create_sheet(0)  # insert at the first position3. 写入数据

    直接将要写入的数据赋值给相应的cell即可,若仅仅是修改一个表。可以跳过前两个步骤,不过要注意不要覆盖掉其它数据:

    ws.cell('B5') = value1
    ws.cell(row = 3, column = 7) = value24. 保存数据

    最后写入将数据写入即可,注意若保存路径下有同名的文件的话,之前的文件会被覆盖:

    wb.save('file_name.xlsx')

    展开全文
  • Python数据处理excel昨天同学请我帮一个忙:就是把如下excel中的人名实现excel表中的每一个名字按行存储,我想了下python应该可以实现这个,就着手做了起来。原始数据如下:原始数据我先对原始数据进行了预处理,...

    d3572729b1811e3201de839f309f0722.png

    Python数据处理之excel

    昨天同学请我帮一个忙:就是把如下excel中的人名实现excel表中的每一个名字按行存储,我想了下python应该可以实现这个,就着手做了起来。原始数据如下:

    36f8757a7bd69861fa5ae557cb9a7e93.png
    原始数据

    我先对原始数据进行了预处理,便于python读取,预处理之后如下:

    873e72ad692acc9e8a221a4799d253b9.png
    预处理后的数据

    我的思路是先把excel中的名字读取到一个txt文档中,之后再按行存储进一个新的excel。

    首先,我将excel中的人名提取到了一个txt文档中,如下所示(我是用vscode打开的):

    d93c69acf5d1ffb9ccfddf6a877c7677.png

    之后准备将每一个人名写入新的excel中,发现一个问题,这个数据有点不是很整洁,它的两个字的名字之间有空格,2个字的名字和3个字及以上的名字之间也存在着空格,这个在读取时就会造成把单个字也当成一个名字。之后我我观察了一个名字的分布形式,只有2个字的存在这种现象,于是写了一个判别代码,将2个字的名字进行整合,代码最后附上,实现的效果如下:

    ce76153bd2007af5c101500fc1f2e975.png

    之后将新的txt中存储的名字写入excel中,效果如下:

    a0b0428c9224d39d1dbb309fe9aa5b67.png

    我个人感觉还挺有趣的,可以用所学的知识解决一些实际的问题,可以提高数据处理的效率。

    附代码:https://github.com/zigangzhao-ai/excel-data-disposal

    展开全文
  • 我们在使用实际工作环境中进行需要处理数据,有些数据存储在excel表格中,需要人工校对或者处理工作量大且容易出错,这里我们就excel数据处理进行说明Python处理Excel文件主要是第三方模块库xlrd、xlwt、pyexcel-...

    我们在使用实际工作环境中进行需要处理数据,有些数据存储在excel表格中,需要人工校对或者处理工作量大且容易出错,这里我们就excel的数据处理进行说明

    Python处理Excel文件主要是第三方模块库xlrd、xlwt、pyexcel-xls、xluntils和pyExcel-erator等,此外Pandas中也带有可以读取Excel文件的模块(read_excel)。这里我们只讲使用xlrd库进行读取excel数据,这里我们使用到xlrd库,可以通过pip进行安装,也可以在Settings里面Project unititled项中使用Project Interpreter 进行安装

    92ace25592973b0753e6736626230fd5.png

    安装xlrd库

    这里我们用一份春晚节目单的excel表格当做测试数据用来调试验证

    fade89a2d26c3117e0fb465df83fc5c7.png

    在PyCharm新建一个python文件,命名ReadExcel.py,首先导入支持库import xlrd

    import xlrddef readExcel(): #读取文件 workbook = xlrd.open_workbook('春晚节目单.xls') #获取xls文件第一页签数据 sheet = workbook.sheet_by_index(0) #获取数据列数 row = sheet.nrows #获取数据行数 col = sheet.ncols print('当前xls行数=%d'%(col)) print('当前xls列数=%d'%(row)) #打印每一行的内容 for value in sheet.col_values(0): print(value)if __name__ == '__main__': readExcel()
    9a585b190b52d300d9d024fbd6ffda50.png

    xls读取结果

    这里只做简单数据读取,关于在实际的工作使用我们后期接着讲,由于Excel本身也不是为了海量数据的应用而产生的,在企业实际场景中,Excel本身的限制和适用,其无法存储和计算过大(例如千万级的数据记录)的数据量,但是Excel可以作为日常基本数据处理、补充数据来源或者汇总级别的数据进行读取,同时也可以作为数据结果展示的载体,这种应用下对于大量数值表格的应用效果非常好。可以说学好python后可以更好的处理表格繁杂的数据,可以节省更多的时间。

    展开全文
  • excelpython哪个难学excel 分应用和VBA编程,phthon本就是编程语言,对数据分析来说,excel足够了,而且是最容易学习的数据处理与分析应用软件,Python肯定比excel难学。Excel,vba与Python?这种问题 可能用...

    excel和python哪个难学

    excel 分应用和VBA编程,phthon本就是编程语言,对数据分析来说,excel足够了,而且是最容易学习的数据处理与分析应用软件,Python肯定比excel难学。

    Excel,vba与Python?

    这种问题 可能用python的pandas是比较可行的 我觉得C#也是可以的,毕竟是编译型语言 性能可能比python还好

    python怎么读写excel文件

    用python处理一个小项目,其中涉及到对excel的操作,通过查资实践做了一下总结便以后用。

    python读写excel文件要用到两个库:xlrd和xlwt,首先下载安装这两个库。

    1、#读取Excel

    import xlrd

    data = xlrd.open_workbook(excelFile)

    table = data.sheets()[0]

    nrows = table.nrows #行数

    ncols = table.ncols #列数

    for i in xrange(0,nrows):

    rowValues= table.row_values(i) #某一行数据

    for item in rowValues:

    print item

    2、写Excel文件

    '''往EXCEl单元格写内容,每次写一行sheet:页签名称;row:行内容列表;rowIndex:行索引;

    isBold:true:粗字段,false:普通字体'''

    def WriteSheetRow(sheet,rowValueList,rowIndex,isBold):

    i = 0

    style = xlwt.easyxf('font: bold 1')

    #style = xlwt.easyxf('font: bold 0, color red;')#红色字体

    #style2 = xlwt.easyxf('pattern: pattern solid, fore_colour yellow; font: bold on;') # 设置Excel单元格的背景色为黄色,字体为粗体

    for svalue in rowValueList:

    strValue = unicode(str(svalue),'utf-8')

    if isBold:

    sheet.write(rowIndex,i,strValue,style)

    else:

    sheet.write(rowIndex,i,strValue)

    i = i 1

    '''写excel文件'''

    def save_Excel(strFile):

    excelFile = unicode(strFile, "utf8")

    wbk = xlwt.Workbook()

    sheet = wbk.add_sheet('sheet1',cell_overwrite_ok=True)

    headList = ['标题1','标题2','标题3','标题4','总计']

    rowIndex = 0

    WriteSheetRow(sheet,headList,rowIndex,True)

    for i in xrange(1,11):

    rowIndex = rowIndex 1

    valueList = []

    for j in xrange(1,5):

    valueList.append(j*i)

    WriteSheetRow(sheet,valueList,rowIndex,False)

    wbk.save(excelFile)

    style2 = xlwt.easyxf('pattern: pattern solid, fore_colour yellow; font: bold on;')

    在设置上Excel单元格的背景色时,fore_colour 支持的颜色是有限的,仅支持一下颜色

    aqua 0x31

    black 0x08

    blue 0x0C

    blue_gray 0x36

    bright_green 0x0B

    brown 0x3C

    coral 0x1D

    cyan_ega 0x0F

    dark_blue 0x12

    dark_blue_ega 0x12

    dark_green 0x3A

    dark_green_ega 0x11

    dark_purple 0x1C

    dark_red 0x10

    dark_red_ega 0x10

    dark_teal 0x38

    dark_yellow 0x13

    gold 0x33

    gray_ega 0x17

    gray25 0x16

    gray40 0x37

    gray50 0x17

    gray80 0x3F

    green 0x11

    ice_blue 0x1F

    indigo 0x3E

    ivory 0x1A

    lavender 0x2E

    light_blue 0x30

    light_green 0x2A

    light_orange 0x34

    light_turquoise 0x29

    light_yellow 0x2B

    lime 0x32

    magenta_ega 0x0E

    ocean_blue 0x1E

    olive_ega 0x13

    olive_green 0x3B

    orange 0x35

    pale_blue 0x2C

    periwinkle 0x18

    pink 0x0E

    plum 0x3D

    purple_ega 0x14

    red 0x0A

    rose 0x2D

    sea_green 0x39

    silver_ega 0x16

    sky_blue 0x28

    tan 0x2F

    teal 0x15

    teal_ega 0x15

    turquoise 0x0F

    violet 0x14

    white 0x09

    yellow 0x0D"""

    另外一种方式是 用pyExcelerator

    from pyExcelerator import *# excel 第一行数据excel_headDatas = [u'发布时间', u'文章标题', u'文章链接', u'文章简介']

    articles =[

    {u'发布时间':u'2017年5月9日',

    u'文章标题':u'Python项目实战教程:国内就能访问的google搜索引擎',

    u'

    u'文章简介':u'大家可以留言、想了解python那个方向的知识、不然我也不知道'},

    {u'发布时间':u'2017年5月4日',

    u'文章标题':u'对于学习Django的建议、你知道的有那些',

    u'文章链接':',

    u'文章简介':u'随着Django1.4第二个候选版的发布,虽然还不支持Python3,但Django团队已经在着手计划中,据官方博客所说,Django1.5将会试验性的支持python3'}

    ]# 定义excel操作句柄excle_Workbook = Workbook()

    excel_sheet_name = time.strftime('%Y-%m-%d')

    excel_sheet = excle_Workbook.add_sheet(excel_sheet_name)

    index = 0#标题for data in excel_headDatas:

    excel_sheet.write(0, index, data)

    index = 1index = 1#内容for article in articles:

    colIndex = 0    for item in excel_headDatas:

    excel_sheet.write(index, colIndex, article[item])

    colIndex = 1

    index = 1#保存test.xlsx到当前程序目录excle_Workbook.save('test.xlsx')# db = mongoDB.mongoDbBase()# db.Get_information_stat()

    如何用python3 将一个大的excel文件(.xlsx)分割为多个excel的文件,sheet 不变。以下是我的代码:

    python各个读写excel模块的对比如下:

    而我使用的是python3.4下的openpyxl和xlsxwriter

    读是openpyxl

    写是xlsxwriter

    对于一般的excel的操作都能实现

    python3处理Excel文件的实际应用

    而我使用的是python3.4下的openpyxl和xlsxwriter

    读是openpyxl

    写是xlsxwriter

    对于一般的excel的操作都能实现

    python处理excel库哪个好

    你好,excel库和python处理相比较的话,个人认为还是python处理更好。

    求推荐python3入门教程,适合新手的

    http://www.python.org/doc/

    怎么用python openpyxl提取txt文本数据到excel?

    感觉有点拖裤子放。。。。明明直接以EXCEL导入TXT的,为什么绕弯圈。。。。。

    并且后面三个问题,都是EXCEL操作的基础题,第一题用

    版权声明:本站所有文章皆为原创,欢迎转载或转发,请保留网站地址和作者信息。

    展开全文
  • 一、查找重复值既然我们这个系列是对比Excel,那么在Excel里是怎么查找重复值的呢?有很多种方法,这里就简单说一种:条件格式。在【开始】——【条件格式】里选择突出显示重复值,就将重复的值突出显示出来了:...
  • 来自PythonABC.org 老师的课程很好,但是每个视频都蛮长的,听着听着就有些晕乎,所以根据视频自己整理了一下,以便记录利用Python对某一份按省份及月份统计的数据进行读取并汇总import 通过对数据输出结果研究,...
  •  数据处理和分析 你可以利用pandas python 库来处理excel文件,做数据分析和报告。比如下面这样的一个excel。 你可以用一句python就可以读出来: sheet = pd.read_excel("data/services.xlsx") ...
  • pythonexcel操作详解拟 制 人 胡张东太仓同维电子有限公司审 批 人 xxx测试中心软件测试科时 间 2013-11-04PythonExcel操作详解文档摘要:本文档主要介绍如何通过python对office excel ...
  • 转发本文并私信我...后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas系列相关:懂Excel就能轻松入门Python数据分析包pandas(七):分列前言本系列有一篇文章是关于 pandas 实现 Exc...
  • python有没有可以修改已存在excel文件的模块python更改已存在excel文件用到的包:[python] view plain copyimport xlrdimport xlwtimport xlutils修改已经存在的excel文思路:首先,将需要更改的excel文开,用...
  • Python数据处理的常用语言,当然也可以用在教育学领域。下面以一篇期刊论文:程哲 卢兴富 李福林|世界一流大学建设成效评价分析——基于科研论文的视角为例,阐述使用Python处理教育领域数据的思路和过程。为...
  • 有些时候excel中直接通过公式进行计算比较方便,这样会比较简洁。咱们废话不多说,直接上代码。 import sys import openpyxl from win32com.client import Dispatch #win32com安装指令为:python -m pip install ...
  • Python 操作 Excel常用工具数据处理Python 的一大应用场景,而 Excel 又是当前最流行的数据处理软件。因此用 Python 进行数据处理时,很容易会和 Excel 打起交道。得益于前人的辛勤劳作,Python 处理 Excel 已有...
  • 做过数据清洗才知道空格有多么恶心(平静脸Python1.左右两侧空格如果不使用包,则对于一个字符串左右两边的空格,可以使用字符串函数strip()。如果在DataFrame中,则可以使用其字符串方法(注意strip没有括号):df['...
  • 第2列是性别,使用一些操作,我计算了数据集中男性的平均年龄为30.我的数据集中女性的平均年龄为28岁.我想将男性的所有空白年龄值替换为30,将女性的所有空白年龄值替换为28.但是我似乎无法做到这一点.任何人都有建议或...
  • pythonexcel数据处理可视化的方法:首先安装xlrd与xlwt库,进行表格读取;然后使用pyecharts生成Echarts图表的类库;最后安装Echarts读取Excel数据及显示即可。pythonexcel数据处理可视化的方法:Excel表操作...
  • PythonExcel 数据处理一.背景。运维工作中,可能会遇到同事或者技术领导给Excel 数据进行,数据抽取汇总或者进行运维自动化提供元数据使用,针对以上场景我们需要进行python 处理,二、Xlrd 模块介绍;2.1 读Excel...
  • 关注我、Python的一大应用就是数据分析了,而数据分析中,经常碰到需要处理Excel数据的情况。这里做一个Python处理Excel数据的总结,基本受用大部分情况。相信以后用Python处理Excel数据不再是难事儿!Python处理...
  • Python处理Excel数据-pandas篇非常适用于大量数据的拼接、清洗、筛选及分析在计算机编程中,pandas是Python编程语言的用于数据操纵和分析的软件库。特别是,它提供操纵数值表格和时间序列的数据结构和运算操作。它的...
  • excel数据处理python提供有第三方库来支持对excel的操作,python处理excel文件用的第三方模块库有xlrd、xlwt、xluntils和pyExcelerator,除此之外,python处理excel还可以用win32com和openpyxl模块。下面我们先安装...
  • 前段时间做了个小项目,帮个海洋系的教授做了个数据处理的软件。基本的功能很简单,就是对Excel里面的一些数据进行过滤,统计,对多个表的内容进行合并等。之前没有处理Excel数据的经验,甚至于自己都很少用到Excel...
  • 【学习笔记】python实现excel数据处理

    万次阅读 多人点赞 2019-02-27 20:03:44
    概述 Excel固然功能强大,也有许多函数实现数据处理功能,但是Excel仍需大量人工操作,虽然能嵌入VB脚本宏,但也...因此,本文就python处理excel数据进行了学习,主要分为pythonexcel数据处理的常用数据类型以及...
  • python处理excel数据的方法:1、使用xlrd来处理;2、使用【xlutils+xlrd】来处理;3、使用xlwt来处理;4、使用pyExcelerator来处理;5、使用Pandas库来处理。这里有一张excel数据表,下面我们通过示例来看看xlrd、...
  • 前段时间做了个小项目,帮个海洋系的教授做了个数据处理的软件。基本的功能很简单,就是对excel里面的一些数据进行过滤,统计,对多个表的内容进行合并等。之前没有处理excel数据的经验,甚至于自己都很少用到excel...
  • 关注我、Python的一大应用就是数据分析了,而数据分析中,经常碰到需要处理Excel数据的情况。这里做一个Python处理Excel数据的总结,基本受用大部分情况。相信以后用Python处理Excel数据不再是难事儿!Python处理...
  • 工作中经常会遇到一些每天都要进行的重复操作,没一点技术含量,做起来却费时费力,还时不时出点小错。为应对这种情况,有些人...我们来看看如何用Python处理excel数据:一、Python处理Excel的方式python对excel的操...
  • Python数据处理excel昨天同学请我帮一个忙:就是把如下excel中的人名实现excel表中的每一个名字按行存储,我想了下python应该可以实现这个,就着手做了起来。原始数据如下:原始数据我先对原始数据进行了预处理,...
  • 如下:import pandas as pd2:读取Excel文件的两种方式:#方法一:默认读取第一个表单df=pd.read_excel('lemon.xlsx')#这个会直接默认读取到这个Excel的第一个表单data=df.head()#默认读取前5行的数据print("获取到...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,857
精华内容 2,342
关键字:

pythonexcel数据处理

python 订阅