精华内容
下载资源
问答
  • 需要将excel文件转化为csv文件,要是手工的一个个去转换,每个sheet页不但有几十个字段,中间还夹杂着空格,然后按顺序转换成csv文件,这要是手工去完成,一两个还行,多了那就是要死人的节奏啊,这时候想到了python...

    为了提高工作效率(偷懒),用python去解决。

    工作需要,需要将excel文件转化为csv文件,要是手工的一个个去转换,每个sheet页不但有几十个字段,中间还夹杂着空格,然后按顺序转换成csv文件,这要是手工去完成,一两个还行,多了那就是要死人的节奏啊,这时候想到了python,走起。

    此代码作用:将 excel 表格内容转化为 csv文件

    excel文件转化后的样式:35|36|37|38|39|40| |1| | | |0|0|0| |12| | |2|13714341| | | |0460?08???000000001003022|153

    1 __author__ = 'zxl'

    2

    3 importpandas as pd4 importos5 importxlrd6

    7 path = r'/Users/zhangxl/Desktop/'

    8 filename = 'zxl.xlsx'

    9 data =xlrd.open_workbook(os.path.join(path, filename))10 sheet_names =data.sheet_names()11

    12

    13 for sheet insheet_names[0:]:14 df =pd.read_excel(os.path.join(path, filename),15 sheet_name=sheet,16 header=None,17 skiprows=1, #从excel表格第二行读取18 encoding='utf-8')19 for i in range(1, df.shape[1] + 1, 2):20 df1 =df[i]21 df1.fillna('', inplace=True)22 df1_str = '|'.join(map(str, df1.to_list()))23 with open(os.path.join(path, sheet + '_' + str(i) + '.csv'),24 'w',25 encoding='utf8') as f:26 f.write(df1_str)

    loading.gif

    展开全文
  • python自动化中,经常会遇到对数据文件的操作,比如添加多名员工,但是直接将员工数据写在python文件中,不但工作量...本文仅介绍pythonexcel的操作安装xlrd 库pip install xlrd笔者在安装时使用了 pip3 instal...

    在python自动化中,经常会遇到对数据文件的操作,比如添加多名员工,但是直接将员工数据写在python文件中,不但工作量大,要是以后再次遇到类似批量数据操作还会写在python文件中吗?

    应对这一问题,可以将数据写excel文件,针对excel 文件进行操作,完美解决。

    本文仅介绍python对excel的操作

    安装xlrd 库pip install xlrd

    笔者在安装时使用了 pip3 install xlrd

    原因:笔者同时安装了python2 和 python3

    如果pip的话会默认将库安装到python2中,python3中不能直接调用。

    那么到底是使用pip 还是pip3进行安装呢?

    如果系统中只安装了Python2,那么就只能使用pip。

    如果系统中只安装了Python3,那么既可以使用pip也可以使用pip3,二者是等价的。

    如果系统中同时安装了Python2和Python3,则pip默认给Python2用,pip3指定给Python3用。

    Xlrd 库简单的使用

    以如下excel文件为例进行操作

    文件名为demo,有两个sheet,名为工作表1和工作表2

    工作表1中有如下数据

    简单的使用# coding=utf-8

    import xlrd

    # 打开文件

    data = xlrd.open_workbook('file/demo.xlsx')

    # 查看工作表

    data.sheet_names()

    print("sheets:" + str(data.sheet_names()))

    # 通过文件名获得工作表,获取工作表1

    table = data.sheet_by_name('工作表1')

    # 打印data.sheet_names()可发现,返回的值为一个列表,通过对列表索引操作获得工作表1

    # table = data.sheet_by_index(0)

    # 获取行数和列数

    # 行数:table.nrows

    # 列数:table.ncols

    print("总行数:" + str(table.nrows))

    print("总列数:" + str(table.ncols))

    # 获取整行的值 和整列的值,返回的结果为数组

    # 整行值:table.row_values(start,end)

    # 整列值:table.col_values(start,end)

    # 参数 start 为从第几个开始打印,

    # end为打印到那个位置结束,默认为none

    print("整行值:" + str(table.row_values(0)))

    print("整列值:" + str(table.col_values(1)))

    # 获取某个单元格的值,例如获取B3单元格值

    cel_B3 = table.cell(3,2).value

    print("第三行第二列的值:" + cel_B3)

    运行后结果

    项目中使用

    获得所有的数据# coding=utf-8

    import xlrd

    def read_xlrd(excelFile):

    data = xlrd.open_workbook(excelFile)

    table = data.sheet_by_index(0)

    for rowNum in range(table.nrows):

    rowVale = table.row_values(rowNum)

    for colNum in range(table.ncols):

    if rowNum > 0 and colNum == 0:

    print(int(rowVale[0]))

    else:

    print(rowVale[colNum])

    print("---------------")

    # if判断是将 id 进行格式化

    # print("未格式化Id的数据:")

    # print(table.cell(1, 0))

    # 结果:number:1001.0

    if __name__ == '__main__':

    excelFile = 'file/demo.xlsx'

    read_xlrd(excelFile=excelFile)

    结果

    如果在项目中使用则可将内容方法稍为做修改,获得所有的数据后,将每一行数据作为数组进行返回# coding=utf-8

    import xlrd

    def read_xlrd(excelFile):

    data = xlrd.open_workbook(excelFile)

    table = data.sheet_by_index(0)

    dataFile = []

    for rowNum in range(table.nrows):

    # if 去掉表头

    if rowNum > 0:

    dataFile.append(table.row_values(rowNum))

    return dataFile

    if __name__ == '__main__':

    excelFile = 'file/demo.xlsx'

    print(read_xlrd(excelFile=excelFile))

    结果

    展开全文
  • 本文的目的是展示一些常见的Excel任务,以及如何在python pandas中执行类似的任务。例子微不足道,但重要的是通过这个例子来循序渐进的介绍pandas简单到复杂的功能。展示pandas如何利用Python的完整的模块系统做一些...

    本文的目的是展示一些常见的Excel任务,以及如何在python pandas中执行类似的任务。例子微不足道,但重要的是通过这个例子来循序渐进的介绍pandas简单到复杂的功能。展示pandas如何利用Python的完整的模块系统做一些简单的文字处理。

    自动求和

    数据如下:
    在这里插入图片描述
    第1步,求出每一行数据的和,并作为一个新列附加到数据中。在excel里,可能用公式是sum(A2:E2)。

    在这里,这功能就可以用pandas的dataframe来解决。这里简单说下dataframe,我们简单认为,dataframe就是对应了excel的数据结构,我们操作的时候,就可以认为dataframe就是对应excel的操作。

    第2步,对P1~P5的每一列做一个求和。在excel里是用公式,SUM(G2:G16).python对应解决方案是用 pandas的对应列,然后直接求sum即可。

    第3步,对第一列求和,平均值,最小值,最大值。

    程序逻辑如下,读入excel,然后按行求和,把求出所有行的和作为一个新列加到数据里,为防止破坏原始数据,写入一个新的excel文件,接着在python运行结果里显示对数据的操作结果。

    程序如下:

    在这里插入图片描述
    运行结果如下:

    在这里插入图片描述
    让我们看看新生成的excel:

    在这里插入图片描述
    只需要这么几行代码,就完成了读取excel,然后对P1,P2,P3,P4,P5求和,平均值,最小值,最大值,并写入新文件的功能。

    第17,18行代码,把求各行和的结果写入一个新的excel文件,名字为newxls.xls,并指定写入第一个名为0的工作表中。

    其中14行代码中df.head()使用head()函数查看列表前几行数据(默认是前5行),如果我在括号里写3,结果只会显示前3行,如下:

    在这里插入图片描述

    了解更多分析及数据抓取可查看:
    http://cloud.yisurvey.com:9081/html/d8acf20b-342f-4806-8dcc-5e6a8d00881d.html?ly=csdn
    本文转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请联系我们删除处理。
    特别说明:本文旨在技术交流,请勿将涉及的技术用于非法用途,否则一切后果自负。如果您觉得我们侵犯了您的合法权益,请联系我们予以处理。

    展开全文
  • 预备阅读:Python使用xlrd和xlwt读写Excel的简单用法前言前面我们学习了简单的Python操作Excel的两个库xlrd和xlwt,今天来实际操作一个案例来增强实战功能。案例背景我们市场部的同学想通过分析广告投放时间前后...

    预备阅读:Python使用xlrd和xlwt读写Excel的简单用法

    前言

    前面我们学习了简单的Python操作Excel的两个库xlrd和xlwt,今天来实际操作一个案例来增强实战功能。

    案例背景

    我们市场部的同学想通过分析广告投放时间前后(分钟级,前1分钟到后5分钟)的用户活跃数据来分析我们广告的投放效果,来决定是否继续投放和投放的其他选择性,所以他们需要我来帮忙计算一下数据。所以这里分享下实际操作。

    数据准备

    1、广告播放时间

    这里的广告播放时间文件为ad.xlsx,由市场部同学提供,部分数据如下。

    171324645_1_20190918094200645.jpeg

    2、用户活跃数据

    一般从数据库计算导出(SQL操作可以看我之前发布的MySQL相关知识),有时候也需要通过日志计算,已经计算好的数据uv.xlsx如下(分钟级)。这里我们区分了移动端和PC端。

    171324645_2_20190918094200910.jpeg

    数据计算

    数据准备完毕之后,就可以直接计算了,因为前面已经说过xlrd和xlwt库的使用,这里直接贴上代码py_excel.py,大家可以实际操作试一试。

    #coding:utf-8

    import xlrd

    import xlwt

    import re

    import sys

    import string

    from datetime import datetime

    #read the ad play time data

    programFile = r'ad.xls'

    #读取广告播放时间数据文件

    adFile = r'ad.xls'

    #打开文件并获取数据

    adWb = xlrd.open_workbook(adFile)

    adSheet = adWb.sheet_by_index(0)

    #获取目标时间列(在第3列,由日期和时间拼接而成)

    adTime = adSheet.col_values(2)

    lenth_of_time = len(adTime)

    #读取uv数据

    uvFile = r'uv.xls'

    uvWb = xlrd.open_workbook(uvFile)

    #数据存储在一张表时,如果有多个sheet,要分开赋值

    uvSheet = uvWb.sheet_by_index(0)

    uvTime = uvSheet.col_values(0)

    length = len(uvTime)

    #初始化写操作

    resultFile = xlwt.Workbook()

    #在生成表的时候添加了两张sheet

    resultMobile = resultFile.add_sheet('mobile',cell_overwrite_ok=True)

    resultPC = resultFile.add_sheet('PC',cell_overwrite_ok=True)

    i=1

    while(i print (i)

    playTime = xlrd.xldate_as_tuple(adTime[i],adWb.datemode)

    print (playTime)

    j= 1

    while(j uvRow = uvSheet.row_values(j)

    uvTime = xlrd.xldate_as_tuple(uvRow[0],uvWb.datemode)

    #时间匹配

    if((playTime[0]==uvTime[0] and playTime[1]==uvTime[1] andplayTime[2]==uvTime[2] and ((playTime[3]==uvTime[3] and uvTime[4]-playTime[4]>-2and uvTime[4]-playTime[4]<6) or (uvTime[3]==playTime[3]+1 anduvTime[4]+60-playTime[4]>-2 and uvTime[4]+60-playTime[4]<6) or(uvTime[3]==playTime[3]-1 and uvTime[4]-59==0 and playTime[4]-0==0))) or(playTime[0]==uvTime[0] and playTime[1]==uvTime[1] and playTime[2]==uvTime[2]-1and uvTime[3]==0 and playTime[3]==23 and uvTime[4]+60-playTime[4]<6)):

    gap = uvTime[4]-playTime[4]

    if(gap

    gap=gap+60

    if(gap==59):

    gap=-1

    if(uvRow[1]=='mo'):

    resultMobile.write(i,gap+1,uvRow[2])

    if(uvRow[1]=='pc'):

    resultPC.write(i,gap+1,uvRow[2])

    j = j + 1

    i= i + 1

    #保存结果

    resultFile.save(r'result.xls')

    首行数据表示分钟。

    171324645_3_20190918094201160.jpeg

    小结

    上面就是今天的主题内容了,今天分享下如何使用Python操作Excel进行读写文件生成目标数据,方便后面进行数据分析。

    著作权归作者所有

    展开全文
  • 运用Python 读写 Excel

    2015-01-28 11:19:00
    下载第三方包xlrd pip install xlrd easy_install xlrd 安装完毕后,分析下面代码 1 from xlrd import open_workbook 2 3 wb = open_workbook('simple.xls','rb') ... 5 print 'Sheet:',s...
  • 今天我们继续分享一个真实的办公自动化需求:如何使Python+Excel+Word批量生成指定格式内容的合同。主要涉及的知识点有:openpyxl模块的综合运用与Word文档的两种遍历逻辑。需求描述你是乙方建筑公司,手上有一份...
  • Python读取Excel

    万次阅读 2019-04-30 19:27:52
    运用python的xlrd库实现对Excel的简单读取,入门级操作。如果没有这个model的话,直接上pip install安装即可。 大概思路: 用xlrd打开一个Excel文件; 获取此文件中的指定sheet的名称(可以是一个或多个); ...
  • pythonexcel表格处理的一些小功能 功能概览pandas库的一些应用文件读入计算表格中每一行的英文单词数简单用textblob进行自然语言情感分析判断一行中是不是有两列值都与其他行重复(可推广至多列)对表格中的两列...
  • a--追加写入 for item in data: file.write(item+'\n' ) file.close() def write_file_path_to_excel(excel): workbook = xlsxwriter.Workbook(excel)#创建一个excel文件 worksheet = workbook.add_worksheet() ...
  • Excel表格 需求分析1.方便读取数据,将每一行数据结合标题生成字典:{“id”: 1, "url": "https://blog.csdn.net/qq_42434318?spm=1001.2014.3001.5113", "boke": "程序员一凡"}小结:代码中需要运用到的知识:列表/...
  • 由于项目需要处理大量的数据,这些基础数据被存储在Excel表格中,团队运用Python强大的数据处理能力进行了数据整理和数据清洗的工作。全文共3376个字,预计阅读约15分钟!怎么又是python!!!【好牛皮的样子】...
  • 利用pythonexcel中画图一、前言1.1、实现效果1.2、需要用到的库的安装二、代码分开讲解2.1、对象的定义以及初始化2.2、对象的方法1:行高列宽调整,以防止图像变形2.3、对象的方法2:10进制转化为16进制2.4、对象...
  • 不得不借助于Excel强大的统计分析能力,这个时候就牵涉到了如何将python直接处理得到的数据存入excel表格当中以及获取表格的数据进行分析,简单的说,学会使用Python操作Excel文件后,可以运用到机器学习之中,也可以...
  • 本段代码对指点定的目录下所有(包括子目录下的)excel文件进合,保存到result.xlsx文件。当然合交的excel文件要有相同的格式,也有相同的列,否则就没有什么意义。本代码未对超过单sheet页条数进行分sheet,已设...
  • pythonexcel表格处理的一些小功能 功能概览pandas库的一些应用文件读入计算表格中每一行的英文单词数简单用textblob进行自然语言情感分析判断一行中是不是有两列值都与其他行重复(可推广至多列)对表格中的两列...
  • 今天分享一个真实的办公自动化需求:如何使Python+Excel+Word批量生成指定格式内容的合同。主要涉及的知识点有:openpyxl模块的综合运用与Word文档的两种遍历逻辑。需求描述你是乙方建筑公司,手上有一份空白合同...
  • 看到了有用csv文件计算欧氏距离的,但是没有用xlsx的excel文件进行运算的,这里提供一下个人的代码: import numpy as np import openpyxl as xl def eclidean_distance(filename): wb = xl.load_workbook...
  • ejsExcel是一款国人开发的、在Node.js应用程序中使用我们预先设置好的Excel模板导出Excel表格的模板引擎。Excel模板导出后Github地址ejsExcel如果因为众(ni)所(dong)周(de)知的原因打不开github,没有关系,它的语法...
  • 2 运用openpyxl打开xlsx文件 2.1对工作薄工作表打开、删除、保存 import openpyxl from openpyxl import Workbook #创建新的工作薄 wb = Workbook() #读取已有工作薄 wb = openpyxl.load_wor...
  • 运用MATLAB和PYTHON批量处理EXCEL文件格式MTALAB批量将CSV文件转为EXCELPython修改excel内字体格式 MTALAB批量将CSV文件转为EXCEL matlab直接转换csv文件会导致日期格式的数据显示为数值形式,即2019/10/6 10:07:49...
  • 说到Python很多人的第一反应就是大数据或者人工智能的相关运用,又或者是爬虫和网站开发领域的应用,其实还有一个用途非常广泛的应用场景就是自动化办公,通过python脚本提升工作效率,今天就简单谈谈Python在工作中怎样...
  • 今天我们继续分享一个真实的办公自动化需求:如何使Python+Excel+Word批量生成指定格式内容的合同。 主要涉及的知识点有:openpyxl模块的综合运用与Word文档的两种遍历逻辑。 需求描述 你是乙方建筑公司,手上有一份...
  • 原标题:Python+Excel+Word一秒制作百份合同文章来源: 早起Python作者: 陈熹 前言大家好,又到了Python办公自动化系列。今天我们继续分享一个真实的办公自动化需求:如何使Python+Excel+Word批量生成指定格式内容...
  • python 运用pandas将数据写入同一个excel中的不同sheet 参考:...
  • 由于项目需要处理大量的数据,这些基础数据被存储在Excel表格中,团队运用Python强大的数据处理能力进行了数据整理和数据清洗的工作。全文共3376个字,预计阅读约15分钟!怎么又是python!!!【好牛皮的样子】...
  • 而得益于简洁、易读、易维护等特点,Python可广泛运用于数据分析、人工智能、爬虫、运维、测试、图像识别、机器学习等领域,在日常数据分析方面,甚至已有“Python取代Excel”的说法。那么,Python是否真的有这么牛...
  • 借鉴代码连接:零基础使用Python读写处理Excel表格 pyhton版本:3.7 操作界面:pycharm 运行平台:远程GPU(太难了…一切尽在摸索之中) 要先学习怎么在pycharm上完成远程操作 Terminal Python的交互式模式,可以...
  • 本篇推送主要是介绍pandas样式,如何运用Python实现EXCEL部分功能,让数据特点更加一目了然~这里用到某班级15个学生四次月考的成绩数据,一起来看看使用方法吧~01数据导入import numpy as npimport pandas as pddata...
  • 今天我们来讲解一个比较简单的案例,使用openpyxl从Excel中提取指定的数据并生成新的文件,之后进一步批量自动化实现这个功能,通过本例可以学到的知识点:openpyxl模块的运用glob模块建立批处理数据源...

空空如也

空空如也

1 2 3 4 5 ... 18
收藏数 343
精华内容 137
关键字:

python运用excel

python 订阅