网络编程
位置:首页>> 网络编程>> Python编程>> pandas重复行删除操作df.drop_duplicates和df.duplicated的区别

pandas重复行删除操作df.drop_duplicates和df.duplicated的区别

作者:jingzen  发布时间:2021-02-13 05:56:36 

标签:pandas,df.drop,duplicates,df.duplicated

概念

df.duplicated()

使用df.cuplicated()来查看重复数据,返回True,False,数据类型是bool.

也可以指定某一列是否有重复值df.cuplidated(‘colname’),不指定则默认为第一列。

df.dropduplicates(’col‘,keep=‘first’,inplace=False)

用来删除重复行。

实例

读取数据

# %% 提取数据 从sqlite
import pandas as pd
from sqlalchemy import create_engine
'''创建sqlite3连接'''
eg = create_engine('sqlite:///I:/jianguoyun/Udoc/WorkDb/dataset2022.db')  #创建数据库连接
# 读取数据库文件
q_store = """
select *  from pj_store20220525
"""
# 读取表
cols= ['货号','品类','节庆','库位','合格','换包装','错码','维修','总数量' ]
df = pd.read_sql(q_store,eg)[cols]

计算重复项

# df.duplicated 计算重复项
cond = df.duplicated('货号') # 查看货号相同的项 df.duplicated返回的是布尔值
def_line = df[cond]
def_line

pandas重复行删除操作df.drop_duplicates和df.duplicated的区别

计算有多少个重复行

#有多少个重复行
dep_data = df.duplicated('货号').sum()
dep_data

用df.drop_duplicates提取夏季品类

# 用df.drop_duplicates提取夏季品类
df_category = df.query('节庆=="夏季"').drop_duplicates('品类',keep='last',inplace=False)
df_category['品类'].sort_values()

pandas重复行删除操作df.drop_duplicates和df.duplicated的区别

参数:

  • keep ,保留最后last还是第一行first,

  • inplace:是否替换原列表,false:不替换,True,替换。

来源:https://blog.csdn.net/m0_46326858/article/details/124969949

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com