当前位置:首页 » 编程语言 » python数据去重复

python数据去重复

发布时间: 2023-01-24 01:03:07

python 清除重复值

from pandas import read_csv

df = read_csv('D://PDA//4.3//data.csv')

df

#找出行重复的位置

dIndex = df.plicated()

#根据某些列,找出重复的位置

dIndex = df.plicated('id')

dIndex = df.plicated(['id', 'key'])

#根据返回值,把重复数据提取出来

df[dIndex]

id  key          value

4  1251147    品牌          Apple

5  1251147  商品名称  苹果iPad mini 3

#直接删除重复值

#默认根据所有的列,进行删除

newDF = df.drop_plicates()

#当然也可以指定某一列,进行重复值处理

newDF = df.drop_plicates('id')

❷ python中list中怎么删除重复数据保留一条

可以先统计list中每个数据的个数,用一个dict存储,然后遍历list,判断是否是最后一个,是的就从list中删除即可

❸ Python第19课:数据清洗之去错、去空、去重

Python 第19课:数据清洗之去错、去空、去重

时间 2019-02-01 下午3:30

主讲 刘培富

地点 四楼电教室

数据清洗是数据治理的关键环节,是指对获取的原始数据(也称“脏数据”)进行审查、校验、加工的过程,目的在于删除重复信息、纠正错误信息,保持数据一致性。

一般来说,数据清洗,主要是对数据进行去错、去空、去重处理。

针对一张包含姓名、身份证号码、车牌号码的数据表,建立纠错规则如下:

1.车牌号既不包含汉字赣,且不包含汉字饶。

2.身份证号码的年份既不等于19也不等于20,身份证号码的月份大于12,身份证号码的日期大于31。

3.身份证号码位数不等于18。

4.姓名的长度小于等于1。

二、去空

对于关键性数据,不允许为空,对于这类数据,要查询是否存在空值。

三、去重

在一张表中,有的数据列允许重复,有的数据列则不允许重复。例如,对于一张车主信息表来说,姓名、身份证号可以重复,因为存在一人登记多辆车的情形,这种重复,不能认为是错误。但是,车牌号则不允许重复,否则就存在业务逻辑的错误。所以,针对车牌号数据列,要进行去重。

通过以下SQL语句,可以列出重复的数据:

综上,数据清洗,既要懂技术,更要懂业务,否则无法正确制定清洗规则,导致数据清洗流于形式,达不到清洗的效果。

❹ Python怎么从文件里的数据去重复,去重复后,再保存到文件里,把重复的数据保存出来

内容读出来通过逗号分割成一个列表,再去掉重复的,再写入到文件里面

#-*-coding:utf-8-*-

filename='data.txt'

withopen(filename,'r')asf:
content=f.read()
content=list(set(content.split(',')))
content=','.join(content)
withopen(filename,'w')as_f:
_f.write(content)

❺ python数据类型(集合)

    1.集合(set)是一个无序不重复元素的序列(意思是有重复的会自动删除,每次打印元素的位置不一定)

    2.基本功能是进行成员关系测试和删除重复元素

    3.可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典

    4.因为set存储的是无序集合,所以我们没法通过索引来访问。访问 set中的某个元素实际上就是判断一个元素是否在set中。

1.创建集合

s=set()#创建一个空集合

s1={1,2,3,'a','python'}

2.删除重复的元素

集合是一个无序不重复元素的序列(意思是有重复的会自动删除,每次打印元素的位置不一定)

3.成员关系测试(检测某个成员是否在集合中)

案例:从终端输入5位数,以空格隔开,把这5位数存入列表中,剔除重复的数据,打印出来

#提示,列表转集合,集合转列表

a=input("请输入5位数字:")

mylist=a.split()

print(mylist)

b=set(mylist)

c=list(b)

print(c)

4.集合常用操作

    1.添加元素

    2.删除元素

    3.删除整个集合

    4.获取集合的长度

    5.不支持改元素

集合操作-添加元素

格式:

集合.add(元素)

格式:

集合.update(元素)

区别:

add不能添加列表,update可以

update是将字符串中的拆分成字符进行追加

add,是当做整体追加在集合中

#案例:从终端输入一个数字就加入集合中,然后打印,又输入一个数字,然后打印,直到输入-1,退出输入

#然后打印最终的集合

ms=set()

while 1:

a=int(input("请输入一个数字:"))

if a==-1:

    break

    ms.add(a)

print(ms)

print(ms)

#案例:从终端输入一个字符串就加入集合中,然后打印,又输入一个字符串,然后打印,直到输入q,退出输入

#然后打印最终的集合,字符串要分开存储,如输入hello,存储的列表是{'h','e','l','0'}

ms=set()

while 1:

a=input("请输入一个字符串:")

if a=='q':

    break

    ms.update(a)

print(ms)

print(ms)

集合操作-删除元素及删除整个集合

格式:

集合.remove(元素)  # 元素如果不存在会引发KeyError

集合.discard(元素)  # 元素如果不存在不发生任何事

集合.pop()  # 集合元素是字符串类型时删除随机元素。 集合元素是其他数据类型时,删除左边第一个元素

del 集合名 #删除整个集合

#案例:有集合{1,2,3,'hello','world'},删除全部字符串,然后最左边第一个元素

a={1,2,3,'hello','world'}

a.discard("hello")

a.discard("world")

a.pop()

print(a)

集合操作-获取集合的长度

格式:

len(集合名)

#案例:有集合{1,2,3,4,'hello','a'},保留1个元素,其他的删除,假如元素个数不确定

s={1,2,3,4,'hello','a'}

for i  in range(len(s)-1):

            s.pop()

  print(s)

集合的集运算

集合的交集,并集,差集,对称差集的运算

{1,2,3,4}交集{4,5,6,7} -->4   交集(&)

{1,2,3,4}并集{4,5,6,7} ->1,2,3,4,5,6,7  并集(|)

{1,2,3,4}差集{4,5,6,7} ->1,2,3  差集(-)

{1,2,3,4}对称差集{4,5,6,7}->1,2,3,5,6,7 4同时出现在两个集合中,不选它 对称差集(^)

#案例:使用花括号和set创建各一个集合,然后对集合进行交、并、差、对称差运算

s={1,2,3,4,5,6}

s1=set([6,7,8,9,10])

print(s&s1)

print(s|s1)

print(s-s1)

print(s^s1)

❻ Python 去除列表中重复的元素

这个有几种方法来完成,但是对于不可哈希的数据来说,BIF set() 是无效的,会报错,下面介绍几种方法

对于以上4种方法,各有利弊,一般来说是方法2最快,方法1和方法3比较类似,但是方法3可以保持列表中的排序和之前的一样,但是开头也说了,这样无法对不可哈希的对象进行去重复,比如列表中的元素还是列表,这种情况下就只能用方法4了,但是方法4的缺点就是比较的慢。

热点内容
好用的反编译 发布:2025-07-20 10:32:44 浏览:56
9月9日复刻先祖是什么安卓 发布:2025-07-20 10:30:27 浏览:604
流控数据库 发布:2025-07-20 10:27:16 浏览:411
云抢包网站源码 发布:2025-07-20 10:25:38 浏览:119
安卓多开为什么一直打不开 发布:2025-07-20 10:25:00 浏览:881
ios移动文件夹 发布:2025-07-20 10:24:50 浏览:689
数控机床编程步骤 发布:2025-07-20 10:14:22 浏览:97
存储单位容量最小的是 发布:2025-07-20 10:14:11 浏览:769
爱情脚本短 发布:2025-07-20 09:56:44 浏览:681
存款机的安全密码是什么 发布:2025-07-20 09:53:03 浏览:33