相关文章推荐
直爽的黄花菜  ·  Excel - Tableau·  3 月前    · 
坚强的馒头  ·  phpexcel 一些基本设置总结 - ...·  1 月前    · 
怕老婆的手套  ·  化學領域 | ...·  8 月前    · 
坏坏的麦片  ·  AFC U20 Asian Cup - ...·  8 月前    · 
健壮的围巾  ·  未势能源2023年度发布会开启 ...·  1 年前    · 
道上混的滑板  ·  网狐旗舰平台重磅推出:玩转竞技娱乐领航棋牌社 ...·  1 年前    · 
喝醉的跑步机  ·  农业农村部关于公布第十批全国“一村一品”示范 ...·  1 年前    · 
Code  ›  python 删除excel表格重复行,数据预处理操作开发者社区
python 大数据 电子表格
https://cloud.tencent.com/developer/article/1725605
眼睛小的足球
2 年前
作者头像
砸漏
0 篇文章

python 删除excel表格重复行,数据预处理操作

前往专栏
腾讯云
备案 控制台
开发者社区
学习
实践
活动
专区
工具
TVP
文章/答案/技术大牛
写文章
社区首页 > 专栏 > 恩蓝脚本 > 正文

python 删除excel表格重复行,数据预处理操作

发布 于 2020-10-21 16:03:04
4K 0
举报

使用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参数
 
推荐文章
直爽的黄花菜  ·  Excel - Tableau
3 月前
坚强的馒头  ·  phpexcel 一些基本设置总结 - 声声慢43
1 月前
怕老婆的手套  ·  化學領域 | 2025年斯隆研究獎獲得者博士論文 | Clarivate
8 月前
坏坏的麦片  ·  AFC U20 Asian Cup - Group A - MD1: China PR 2-1 Qatar
8 月前
健壮的围巾  ·  未势能源2023年度发布会开启 双轮驱动氢能产业发展-爱卡汽车爱咖号
1 年前
道上混的滑板  ·  网狐旗舰平台重磅推出:玩转竞技娱乐领航棋牌社交_新浪广东_新浪网
1 年前
喝醉的跑步机  ·  农业农村部关于公布第十批全国“一村一品”示范村镇及2020年全国乡村特色产业十亿元镇亿元村名单的通知
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号