python 删除excel表格重复行,数据预处理操作
作者:HelenLee01 发布时间:2023-04-19 06:10:33
标签:python,excel,重复行,数据,预处理
使用python删除excel表格重复行。
# 导入pandas包并重命名为pd
import pandas as pd
# 读取Excel中Sheet1中的数据
data = pd.DataFrame(pd.read_excel('test.xls', 'Sheet1'))
# 查看读取数据内容
print(data)
# 查看是否有重复行
re_row = data.duplicated()
print(re_row)
# 查看去除重复行的数据
no_re_row = data.drop_duplicates()
print(no_re_row)
# 查看基于[物品]列去除重复行的数据
#wp = data.drop_duplicates(['物品'])
#print(wp)
# 将去除重复行的数据输出到excel表中
no_re_row.to_excel("test2.xls")
补充知识:Python数据预处理(删除重复值和空值)
pandas几个函数的使用,大数据的预处理(删除重复值和空值),人工删除很麻烦
Python恰好能够解决
注释很详细在这不一一解释了
######################################
##### 读写excel(xls\xlsx)文件
import pandas as pd
import numpy as np
df_excel = pd.read_excel('data3.xlsx')
print('数据量行*列',df_excel.shape)
# # df_excel.to_excel('df_excel.xlsx',header=None)#生成文件保存,无表头
print('数据集中存在重复观测的数量:\n',np.sum(df_excel.duplicated())) #F为不存在,T为存在,用sum显示重复的数量
print('删除行重复后的数据\n',df_excel.drop_duplicates(subset=None,keep='first',inplace=None))#excel文件中设定第一和第二行为重复行,结果删除了第二行保留第一行
###df_excel.drop_duplicates(subset=['A','B'],keep='first',inplace=True)
#### 代码中subset对应的值是列名,表示只考虑这两列,将这两列对应值相同的行进行去重。默认值为subset=None表示考虑所有列。
#####keep='first'表示保留第一次出现的重复行,是默认值。keep另外两个取值为"last"和False,分别表示保留最后一次出现的重复行和去除所有重复行。
#####inplace=True表示直接在原来的DataFrame上删除重复项,而默认值False表示生成一个副本
print('数据集列中是否存在缺失值:\n',df_excel.isnull().any()) #F为不存在,T为存在
print('每一行的缺失值个数:',df_excel.isnull().sum(axis=1))
print('每一列的缺失值个数:',df_excel.isnull().sum(axis=0))
####### df.isnull().sum(axis=0)每一列的缺失值个数
#####df.isnull().any()则会判断哪些”列”存在缺失值
df=df_excel.dropna()
print(df_excel.dropna(thresh=5))
# #axis=0: 删除包含缺失值(NaN)的行
# #axis=1: 删除包含缺失值(NaN)的列
# # how=‘any' :要有缺失值(NaN)出现删除
# # how=‘all': 所有的值都缺失(NaN)才删除
# 还有一个thresh参数
# thresh=n,保留至少有 n 个非 NaN 数的行
######drop用法
print(df_excel.drop(['edu'],axis=1))#按照列删除edu这一列
print(df_excel.drop([0],axis=0))#按照行删除0这一行
来源:https://blog.csdn.net/weixin_43289135/article/details/104595433


猜你喜欢
- 前言利用Python实现获取动态图表,废话不多说~让我们愉快地开始吧~开发工具Python版本: 3.6.4相关模块:re模块;reques
- 概述在进行网站爬取数据的时候,会发现很多网站都进行了反爬虫的处理,如JS加密,Ajax加密,反Debug等方法,通过请求获取数据和页面展示的
- 废话不多说。直接上代码:sock_post.php:<?phpfunction sock_post($url, $data='
- 如下所示:#coding:utf-8import binasciia = 'worker'#先把worker转换成二进制数据
- 小毅的blog:http://andymao.com/andy/注:本文实例在IE5.x下可能会显示不出来,请使用IE6、IE7、Firef
- 即将上线的百度C2C平台百度“有啊”开始对百度HI用户进行邀请,其首页页面、“有啊”LOGO也首次曝光。从曝光的图片看,百度“有啊”的主色调
- 类视图使用装饰器为类视图添加装饰器,可以使用两种方法。为了理解方便,我们先来定义一个为函数视图准备的装饰器(在设计装饰器时基本都以函数视图作
- 本文实例讲述了python排序方法。分享给大家供大家参考。具体如下:>>> def my_key1(x):... &nbs
- 在同一个 Apache 实例中运行多个 Django 程序是完全可能的。 当你是一个独立的 Web 开发人员并有多个不同的客户时,你可能会想
- 1、生成配置文件''' 生成配置文件'''import configparse
- 打开editor/filemanager/connectors/php目录下commands.php,找到FileUpload函数,在$sE
- 本文实例讲述了Python分支语句与循环语句应用。分享给大家供大家参考,具体如下:一、分支语句1、if else语句语法:if 条件判断:
- 分享几个字体设计:1.巧克力2.绿野邂逅是人间四月天3.去年花开的时候4.仲夏梦之夜5.芊芊茉莉香6.玫瑰人生7.真情告白8.遮掩锋芒
- 本文实例讲述了Python中list以及list与array的相互转换实现方法。分享给大家供大家参考,具体如下:python中的list是一
- 在官方网站中对as_index有以下介绍:as_index : boolean, default TrueFor aggregated ou
- 引言在Babylon.js中媒体设备流使用起来有很多坑,我们将在本文中逐一说明这些坑并提供相应的解决方案。问题1:Property '
- 代码如下:---找出促销活动中销售额最高的职员 ---你刚在一家服装销售公司中找到了一份工作,此时经理要求你根据数据库中的两张表
- 简单使用安装celery及redis定义celery任务项目下新建tasks.pyfrom celery import Celery# 创建
- 在神经网络入门回顾(感知器、多层感知器)中整理了关于感知器和多层感知器的理论,这里实现关于与门、与非门、或门、异或门的代码,以便对感知器有更
- 有时候需要对有角度的矩形框内图像从原图片中分割出来。这里的程序思想是,先将图片进行矩形角度的旋转,使有角度的矩形处于水平状态后,根据原来坐标