栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【Pandas】DataFrame数据去重操作 drop

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Pandas】DataFrame数据去重操作 drop

构造数据:
import pandas as pd

# 创建一个Dataframe
df = pd.Dataframe(
    data=[
        ['zs', 17, 1],
        ['ls', 18, 1],
        ['ls', 18, 1],
        ['ww', 19, 2],
        ['zl', 20, 2]
    ],
    index=['stu0', 'stu1', 'stu2', 'stu3', 'stu4'],
    columns=['name', 'age', 'group']
)
print('df:n', df)

数据去重

Dataframe.drop_duplicates(subset=None, keep=“first”, inplace=False, ignore_index=False)

参数:

subset:指定进行去重的列,默认None使用所有列
keep: 去重方式

'first':默认,保留第一次出现的数据,丢掉后续出现的重复的数据'last':保留最后一次出现的数据,丢掉之前出现的重复的数据False:删除所有重复的数据

inplace: 默认为False。如果为True,则直接删除,对原df进行操作; 如果为False,那么返回一个结果,不会对原df操作!
ignore_index : 默认为 False, 如果为 True则不使用原 行索引,生成索引为 0, 1, …, n - 1。

查看有多少个不同的小组

df.drop_duplicates(
    subset=['group'],  # 按照指定的列进行去重
    keep='first',  # 保留第一次出现的数据,丢掉后续出现的重复的数据
    inplace=True
)
print('df0:n', df)


df.drop_duplicates(
    subset=['group'],
    keep='first',
    inplace=True,
    ignore_index=True	# 忽略行索引,生成新索引
)
print('df1:n', df)

重复数据统计
ret = pd.value_counts(
	df['group'],
	sort=True,		# 默认 True,按值排序
	ascending=True,	# 默认 False,是升序排序;True 表示降序
	dropna=True 	# 默认 True 不包括 NaN 的计数
)
print('ret:n', ret)
"""
ret:
2    2			# 2组出现了2次
1    3			# 1组出现了3次
Name: group, dtype: int64
"""
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/769069.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号