python
主页 > 脚本 > python >

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

2022-08-22 | 佚名 | 点击:

概念

df.duplicated()

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

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

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

用来删除重复行。

实例

读取数据

1

2

3

4

5

6

7

8

9

10

11

12

# %% 提取数据 从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]

计算重复项

1

2

3

4

# df.duplicated 计算重复项

cond = df.duplicated('货号') # 查看货号相同的项 df.duplicated返回的是布尔值

def_line = df[cond]

def_line

计算有多少个重复行

1

2

3

#有多少个重复行

dep_data = df.duplicated('货号').sum()

dep_data

用df.drop_duplicates提取夏季品类

1

2

3

# 用df.drop_duplicates提取夏季品类

df_category = df.query('节庆=="夏季"').drop_duplicates('品类',keep='last',inplace=False)

df_category['品类'].sort_values()

参数:

原文链接:https://blog.csdn.net/m0_46326858/article/details/124969949
相关文章
最新更新