精华内容
下载资源
问答
  • python 删除excel某一列

    万次阅读 热门讨论 2019-08-26 15:53:53
    pandas 删除excel某一列 from openpyxl import * filename = r’C:\Users\Desktop\a.xlsx’ wb = load_workbook(filename) ws = wb.active ws.delete_cols(13) #删除第 13 列数据 wb.save(filename) 读取excel部分...

    pandas 删除excel某一列

    from openpyxl import *
    
    filename = r’C:\Users\Desktop\a.xlsx’
    wb = load_workbook(filename)
    ws = wb.active
    ws.delete_cols(13) #删除第 13 列数据
    ws.delete_rows(3) #删除第 3行数据
    wb.save(filename)
    

    读取excel部分数据并分列

    import pandas as pd
    
    #读取excel部分数据,按照规则分列其中一部分数据
    def date_divide():
        af = pd.read_excel(book,ignore_index=True,header=0)#读取所有内容
        df = pd.read_excel(book,usecols=[8,8],ignore_index=True,header=0)#读取部分内容
        df['机构'] = df['所在机构'].str.split('-').str[1]
        df['机构二'] = df['所在机构'].str.split('-').str[2]
        df['分组'] = df['所在机构'].str.split('-').str[3]
        df['组别'] = df['所在机构'].str.split('-').str[4]
        df['所在机构'] = df['所在机构'].str.split('-').str[0]
    
    展开全文
  • 、概述操作 excel 是程序员经常要遇到的场景。因为产品、运营的数据都是以这种格式存储。所以,当程序员拿到这些数据肯定要解析,甚至需要把结果输出成 excel 文件。下面就介绍如果用 Python 方面的读、写 excel ...

    一、概述

    操作 excel 是程序员经常要遇到的场景。因为产品、运营的数据都是以这种格式存储。所以,当程序员拿到这些数据肯定要解析,甚至需要把结果输出成 excel 文件。

    下面就介绍如果用 Python 方面的读、写 excel 文件。

    二、openpyxl

    A Python library to read/write Excel 2010 xlsx/xlsm files

    借助 Python 的三方库 openpyxl ,让操作 excel 变得简单。

    1. 安装:pip install openpyxl
    2. 文档:官方文档
    3. 示例代码:
    # coding=utf-8
    from openpyxl import Workbook
    wb = Workbook()
    
    # 选择 sheet
    ws = wb.active
    
    # 设置值到某一个单元格(cells)
    ws['A1'] = 42
    
    # Python 的数据类型可以自动转换
    import datetime
    ws['A2'] = datetime.datetime.now()
    
    # 存储文件
    wb.save("sample.xlsx") # 默认保存到当前目录下。文件名称为 sample.xlsx

    4097e65bc02b0f98c685f10eb9809e88.png

    读数据

    from openpyxl import load_workbook
    
    wb = load_workbook('sample.xlsx') # 读取文件
    sheet = wb.get_sheet_by_name("Sheet") # 根据 sheet 名称获取,返回 Worksheet 对象
    columns = sheet['A'] # 选择一列
    for fi_column in columns:
        # 遍历这列的所有行
        print fi_column.value # 每一个fi_column是 Cell 对象

    写数据

    from openpyxl import Workbook
    wb = Workbook()
    # 选择 sheet
    ws = wb.create_sheet()
    # result_list ->[[第一行数据], [第二行数据], ...]
    for fi_result in result_list:
        ws.append(fi_result) # 每行的数据
    # 存储文件
    wb.save("test.xlsx")

    更多 API

    • Worksheet.columns():获取 sheet 所有列
    • Worksheet.iter_cols():通过列截断
    • Worksheet.rows():获取 sheet 所有行
    • Worksheet.iter_rows():通过行截断
    • Worksheet.cell():操作单元格
    • Workbook.save():存储文件
    • workbook.Workbook.create_sheet():创建新的 sheet
    • Workbook.sheetnames():获取 sheet 名称
    展开全文
  • 实例3:python 删除excel中的多余(所用数据)
  • 1. 前言上篇文章中,我们聊到使用xlrd、xlwt、xlutils 这组合操作 Excel 的方法最全总结 | 聊聊 Python 办公自动化之 Excel(上)本篇文章将继续聊另外种方式,即:openpyxl不得不说,openpyxl 更强...
    聊聊 Python 数据处理全家桶(Memca 篇)

    点击上方“AirPython”,选择“加为星标”

    第一时间关注 Python 技术干货!

    0f7bab1fe32c5dcf224c65af29fe8154.png

    1. 前言

    上一篇文章中,我们聊到使用 xlrd、xlwt、xlutils 这一组合操作 Excel 的方法

    最全总结 | 聊聊 Python 办公自动化之 Excel(上)

    本篇文章将继续聊另外一种方式,即:openpyxl
    不得不说,openpyxl 更强大!
    它支持 xlsx 格式的表格文件,并且支持 Numpy、Pandas 等包,可用于绘制图表

    2. 准备

    首先,我们需要安装依赖包

    # 安装依赖包

    3. 读取数据

    使用 openpyxl 中的 load_workbook(filepath) 加载本地一个 Excel 文件,返回结果是一个工作簿对象

    import openpyxl

    利用工作簿对象,可以获取所有的 Sheet 名称及 Sheet 列表

    def get_all_sheet_names(wb):

    工作簿对象提供了 active 属性,用于快速获取当前选择的 Sheet

    def get_current_sheet(wb):

    另外,也可以通过 Sheet 名称去获取某一个特定的 Sheet 对象

    def get_sheet_by_name(wb, sheet_name):

    使用 sheet.max_row 和 sheet.max_column 可以获取当前 Sheet 中的数据行数和列数

    def get_row_and_column_num(sheet):

    openpyxl 提供 2 种方式来定位一个单元格,分别是:

    • 数字索引,从 1 开始

      数字索引:行数字索引、列数字索引

      比如:row_index=1,column_index=1

    • 行和列组成的字符串索引

      字符串索引:列由字母组成 + 行索引

      比如:A1 对应第一行、第一列的单元格

    并且,openpyxl.utils 提供了方法,便于 列索引 在两者之间进行转换
    from openpyxl.utils 
    单元格的获取,同样可以通过上面 2 种索引方式来获取
    def get_cell(sheet, row_index, column_index):
    在日常处理 Excel 数据过程中,可能需要判断单元格数据类型,而 openpyxl 并没有提供现成的方法
    这里,我们可以通过单元格对象的 value 属性拿到值,接着使用 isinstance 方法判断数据类型
    def get_cell_value_and_type(cell):
    单独获取某一行[列]的数据,可以使用下面的方式:
    def get_row_cells_by_index(sheet, row_index):
    需要注意的是,获取某一行的数据需要传入数字索引;而对于列数据的获取,必须传入字符串索引

    和 Python 列表范围取值类似,openpyxl 同样支持使用 : 符号拿到某个范围内的数据行[列]

    def get_rows_by_range(sheet, row_index_start, row_index_end):

    4. 写入数据

    要写入数据到 Excel 表格

    首先,使用 openpyxl.Workbook() 创建一个 Excel 工作簿对象

    接着,使用工作簿对象的 create_sheet() 新建一个 Sheet

    # 创建一个Excel工作簿

    默认创建的 Sheet 被插入到最后一个位置,第 2 个参数可以指定 Sheet 插入的位置

    Sheet 标签的背景色同样支持修改,使用 sheet_properties.tabColor 指定 RGB 颜色值

    比如,要设置某一个 Sheet 的背景色为红色,只需要先查询到对应的 Sheet,然后指定颜色值为 FF0000 即可

    def set_sheet_bg_color(sheet, rgb_value):

    openpyxl 支持行列数字索引、字符串索引以这 2 种方式写入数据到单元格中

    def write_value_to_cell_with_num(sheet, row_index, column_index, value):

    在单元格中插入图片也很简单,openpyxl 提供的 add_image() 方法

    参数有 2 个,分别是:图片对象、单元格字符串索引

    为了便于使用,我们可以将列索引进行转换,然后封装成两个插入图片的方法

    from openpyxl.drawing.image 

    最后,调用工作簿对象的 save() 方法,将数据真实写入到 Excel 文件中

    # 注意:必须要写入,才能真实的保存到文件中

    5. 修改数据

    修改数据包含:单元格数据的修改、单元格样式的修改

    对于单元格数据的修改,只需要先读取工作簿对象,查询到要操作的 Sheet 对象,然后调用上面的方法修改单元格数据,最后调用 save() 函数保存覆盖即可

    def modify_excel(self, file_path):

    单元格样式包含:字体样式、单元格背景样式、边框样式、对齐方式等

    以常见的字体样式、对齐方式为例

    首先,使用 openpyxl 中的 Font 类创建一个对象,指定字体名称、字体大小、是否加粗、是否斜体、颜色、下划线等

    from openpyxl.styles 

    接着,构建一个 Alignment 对象,指定单元格的对齐方式

    from openpyxl.styles 

    最后,使用单元格对象的 font/alignment 属性,将字体样式和对齐方式设置进去即可

    # 设置属性样式(字体、对齐方式)

    6. 进阶用法

    接下来,聊聊几个常用的进阶用法

    1、获取可见及隐藏的 Sheet

    通过判断 Sheet 对象的 sheet_state 属性值,可以判断当前 Sheet 是显示还是隐藏

    当值为 visible 时,代表 Sheet 是显示的

    当值是 hidden 时,代表这个 Sheet 被隐藏了

    def get_all_visiable_sheets(wb):

    2、获取隐藏/显示的行索引列表、列索引列表

    受限于篇幅,这里以获取所有显示/隐藏的行索引列表为例

    遍历 Sheet 对象的 row_dimensions 属性值,通过判断行属性的 hidden 值,判断当前行是否隐藏或显示

    def get_all_rows_index(sheet, hidden_or_visiable):

    3、获取单元格字体颜色及单元格背景颜色

    单元格对象的 font.color.rgb、fill.fgColor.rgb 属性值分别代表字体颜色值、单元格背景颜色

    def get_cell_font_color(sheet, row_index, column_index):

    7. 最后

    可以发现,openpyxl 相比 xlrd/xlwt,提供了大量实用的 API,功能更强大,并且完美支持 xlsx!

    受限于篇幅,文中只展示了部分功能和代码,更加复杂的功能,比如:单元格合并、单元格完整样式操作,我已经封装成方法上传到后台

    要获取全部源码,关注公众号,后台回复「 excel 」即可获得全部源码

    如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

    推荐阅读最全总结 | 聊聊 Python 办公自动化之 Excel(上)最全总结 | 聊聊 Python 数据处理全家桶(配置篇)我用几行 Python 自动化脚本完美解决掉了小姐姐的微信焦虑感 6ff9d10946513acef51fb24e539d30cd.png
    展开全文
  • 1.在pythonexcel的简单读写操作,推荐使用xlrd(特别是读操作) 2.到http://pypi.python.org/pypi/xlrd 去下载 xlrd库; 3.工程代码如下: 复制代码 代码如下: import xlrd def open_excel(fileName=”simple....
  • 删除excel某列空行

    2018-09-26 14:00:58
    有时候待处理的excel表格里有很多空数据的行,vb6删除excel某列空行
  • 运行以上代码之后我的excel为啥删除了一行,而不是一列? 运行代码前的excel: ![图片说明](https://img-ask.csdn.net/upload/201909/24/1569301931_472982.png) 运行代码后的excel: ![图片说明]...
  • python3.7 openpyxl 删除指定一列或者一行 # encoding:utf-8 import pandas as pd import openpyxl xl = pd.read_excel(rE:\55\CRM经营分析表-10001741-1570416265044.xls) xl.to_excel(rE:\55\crms.xlsx) wk = ...
  • i have the following excel file, and i would like to clean specific rows/columns so that i can further process the file.I have tried this, but i have not managed to remove any of the blank lines, i ve...

    1586010002-jmsa.png

    i have the following excel file, and i would like to clean specific rows/columns so that i can further process the file.

    HDy2c.png

    I have tried this, but i have not managed to remove any of the blank lines, i ve only managed to trim from those containing data. Here, i was trying to only save the data from the third row and on.

    xl = pd.ExcelFile("MRD.xlsx")

    df = xl.parse("Sheet3")

    df2 = df.iloc[3:]

    writer4 = pd.ExcelWriter('pandas3.out.no3lines.xlsx', engine='xlsxwriter')

    table5 = pd.DataFrame(df2)

    table5.to_excel(writer4, sheet_name='Sheet1')

    writer4.save()

    I specifically want to remove rows 1, 3 (the empty ones) and the first column, so that i can pivot it. Is there a way to do this? Thank you.

    解决方案

    You can use drop(...) to remove rows, and drop(..., axis=1) to remove columns

    data = [

    ['', '', '', ''],

    ['', 1, 2, 3],

    ['', '', '', ''],

    ['', 7, 8, 9],

    ]

    import pandas as pd

    df = pd.DataFrame(data)

    # drop first column - [0]

    df = df.drop(0, axis=1)

    # drop first and third row - [0,2]

    df = df.drop([0,2])

    print(df)

    Before:

    0 1 2 3

    0

    1 1 2 3

    2

    3 7 8 9

    After:

    1 2 3

    1 1 2 3

    3 7 8 9

    展开全文
  • python中进行数据处理,经常会遇到有些元素内容是不需要的。需要进行删除或者替换。本篇就详细探讨一下各种数据类型(series,dataframe)下的删除方法 ...isin反函数删除不需要的部分元素,适合大批量:
  • 原标题:「总结篇」Python中所有的Excel操作技巧Python对于Excel的操作是多种多样的,掌握了相关用法就可以随心所欲的操作数据了!操作xls文件xlrd(读操作):import xlrd1、引入xlrd模块workbook=xlrd.open_...
  • Excel作为最常用的数据处理软件,很多情况下相同的操作,借助python可以实现事半功倍的... 按照一列数值进行排序 2. 按照有缺失值的列进行排序 3.按照多列数值进行排序一. 数据替换1. 一对一替换Excel操作在Excel...
  • 1.对excel进行操作,对查找的内容进行精准匹配或模糊匹配 import pandas as pd import openyxl from pandas import Series,DataFrame test=pd.read_excel('测试.xlsx',sheet_name='test') #读入需要处理的表格及...
  • 我们从网上下载的批量excel文件中,有时候这些文件的第行是广告信息,我们可以利用python批量删除行,并且保存文件。由于程序涉及大量的IO操作,我们可以使用多线程进行操作。 简介 get_all_excel(path): ...
  • 要做csv文件数据的清洗。 其中有一列是字符串数据,想将这一列中分号(“;”)以后的数据全部删除。 请大家想想有什么办法</p>
  • 今天小编就为大家分享一篇Python中pandas dataframe删除一行或一列:drop函数详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 删除excel中列为特定值的所有行 # 导入需要用到的相关包 import os import openpyxl #定义删除函数 def delete_row(filename, sheet_name, exc_string, column_num): # 载入工作簿 wb = openpyxl.load_workbook...
  • 一对一替换多对一替换多对多替换参考一列数值进行排序参照有缺失值的列排序参考多数值列排序数值排名删除删除删除特定列行数值计数唯一值获取数值查找区间切分插入新的行或列行列互换索引重塑长宽表转换apply( )...
  • python Dataframe 根据某一列的值来删除多行 在Dataframe中,有的时候想根据某一列值来删除。 方法一:你可以做负isin()索引: In [57]: df Out[57]: a b c 0 1 2 2 1 1 7 0 2 3 7 1 3 3 2 7 4 1 3 1 5 3 4 2 6 0 7...
  • ndarray是Python个快速、灵活的大型数据集容器。数组允许在整块数据上进行数学计算。标准的NumPy导入方式为:import 生成数组可以使用array函数。定义维数组arraya = np.array([2, 3, 4, 5, 6])数组中的...
  • # 将文件读取出来放个列表里面 pwd = r'C:/Users/31373/Desktop/data' # 获取文件目录 # 新建列表,存放文件名 file_list = [] # 新建列表存放每个文件数据(依次读取多个相同结构的Excel文件并创建...
  • 做数据分析的时候通常我们并不是对真个excel文件进行操作,换言之,每一列都是一个特征,我们需要针对分析。遇到这类问题的时候,我们通常想得到一列中所有符合条件的数据,挑出来,然后组成一个单独的文件进行分析...
  • 在处理电子表格时,可能经常需要在工作表中插入或删除行和。... 使用Python删除Excel工作表中的 为了在Excel工作表中插入或删除行和,我们将Aspose.Cells for Python via Java它是个功能强大的电子表格处理A
  • Excel是我们最常用的office软件之,很多工作内容都是每天处理大量Excel表格,相同的操作如果用python来操作是怎样的呢,这两者之间有什么互补的呢?这一节我们将举几个例子来看一下~ 目录缺失值查看缺失值删除...
  • 这个是用python语言写的,个把excel表格首行删去的小程序
  • 最近经常用python处理excel,基本就是读取、处理字段、再保存。这里先把基础操作抽出来,下次直接使用就好了: # -*- coding: utf-8 -*- import pandas as pd import os # 函数 def process_excel(file_name): # ...
  • 各位朋友大家好,非常荣幸和大家聊聊用 Python Pandas 处理 Excel 数据的话题。因为工作中一直在用 Pandas,所以积累了一些小技巧,在此借 GitChat 平台和大家分享一下心得。在开始之前我推荐大家下载使用 ...
  • k = k.drop(columns=['对方户名','流水号','交易额','事件名称','流水时间','流水标志','操作员','扇区号'],axis=1) #删除整列全为NAN的 k = d[d['对方户名'].notnull()] # 排除NAN k = k.loc[k['对方户...
  • Python种计算机程序设计语言。是种动态的、面向对象的脚本语言。它包含了许多命令来帮助我们实现各种各有的功能,接下来在文章中为大家分享【推荐课程:Python教程】(1)打开csv文件import pandas as pd df=pd....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,333
精华内容 4,933
关键字:

python删除excel某一列

python 订阅