python实现对excel进行数据剔除操作实例

yipeiwu_com5年前Python基础

前言

学习Python的过程中,我们会遇到Excel的各种问题。下面这篇文章主要给大家介绍了关于python对excel进行数据剔除操作的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

Python解析Excel时需要安装两个包,分别是xlrd(读excel)和xlwt(写excel),安装方法如下:

pip install xlrd
pip install xlwt

需求分析:

判断excel2表中的某个唯一字段是否满足条件,如果满足条件,就在excel1中进行查询,若存在excel中,就将该数据进行剔除。

python脚本的实现:

from __future__ import division
import pandas as pd
#指定文件的路径
imputfile= 'C:\\Users\\Administrator\\Desktop\\excel1.xlsx' #原始表excel1
imputfile1= 'C:\\Users\\Administrator\\Desktop\\excel2.xls' #excel2
outputfile = 'C:\\Users\\Administrator\\Desktop\\result.xlsx' #结果
#读取excel1的数据到data
data = pd.read_excel(imputfile,encoding='utf-8') 
ex_list = list(data.iloc[:,1]) #将需要比对的字段转换为list形式
#读取excel2的数据到remove_data
remove_data = pd.read_excel(imputfile1,encoding='utf-8')
#找出excel2中需要筛选的字段满足的条件。如我这边需要满足的条件是:remove_data.iloc[i,7] =='成功'
remove_phone=[] 
for i in range(0,len(remove_data)): 
 if remove_data.iloc[i,7] =='成功':
  phone = remove_data.iloc[i,3]
  remove_phone.append(phone)
#删除满足条件数据 
for i in range(0,len(remove_phone)): 
 ex_list.remove(remove_phone[i])
#将剔除后的数据赋值到new_data
new_data=data[data.iloc[:,1].isin(ex_list)]
#导出excel 
new_data.to_excel(outputfile)

当然,像这种对excel的剔除数据也可以直接再excel中实现,比如我们先对excel2和excel1都按某一唯一字段进行排序,然后将excel2中需要筛选的结果复制在Excel1中,直接在excel1中根据该字段进行排序。

注意:但是这种方法有一个缺陷是,如果Excel2中的数据并不是完整的,那排序下来也会和excel1不一致。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

python排序方法实例分析

本文实例讲述了python排序方法。分享给大家供大家参考。具体如下: >>> def my_key1(x): ... return x % 10 ... >...

python 遍历字符串(含汉字)实例详解

python 遍历字符串(含汉字)实例详解 s = "中国china" for j in s: print j 首先一个,你这个'a'是什么编码?可能不是你所想的gbk &...

Python文本处理简单易懂方法解析

这篇文章主要介绍了Python文本处理简单易懂方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 自从认识了python这门语言,...

使用PyOpenGL绘制三维坐标系实例

使用PyOpenGL绘制三维坐标系实例

我就废话不多说了,直接上代码吧! def drawCoordinate(): ''' 绘制三维的坐标系,并绘制由坐标轴构成的平面的网格,各个坐标轴的颜色以及由坐标轴所引出的网...

python+webdriver自动化环境搭建步骤详解

python+webdriver自动化环境搭建步骤详解

python是一个很好脚本语言工具,现在也比较流行的一个脚本语言工具,对目前web自动化可以用的比较是webdriver框架进行自动化测试,脚本写起来较简单,运行的占用的内容较小。那么对...