精华内容
下载资源
问答
  • 主要为大家详细介绍了python查找重复图片并删除,识别不同尺寸大小一致的图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 使用python查找重复

    2018-07-07 17:51:26
    找出所有重复单词的索引,并将重复例句合并。最后将整张词表分割成重复值和非重复值部分。 核心代码 1、使用xlwt和xlrd模块读写Excel 读取Excel的步骤在于,获得所有sheet名字的数组,通过名字读取某一个sheet的内容...

    任务要点

    在词表中,一些单词重复,并有重复例句。找出所有重复单词的索引,并将重复例句合并。最后将整张词表分割成重复值和非重复值部分。

    核心代码

    1、使用xlwt和xlrd模块读写Excel

    读取Excel的步骤在于,获得所有sheet名字的数组,通过名字读取某一个sheet的内容,然后使用sheet.row_values()和sheet.col_values()获取某一行或列的内容。

    initialData = ‘...’ #需要读取的excel的路径
    workbook = xlrd.open_workbook(initialData)
    sheet_names = workbook.sheet_names()
    sheet = workbook.sheet_by_name(sheet_names[0])
    data = sheet.col_values(4)

    写入EXCEL的步骤在于,使用xlwt.Workbook()新建一个Excel缓存,然后使用.add_sheet()指定名字新建sheet。

    book = xlwt.Workbook(encoding='utf-8', style_compression=0)
    wSheet1 = book.add_sheet("noRepetition")
    wSheet2 = book.add_sheet("repetition")

    2、使用set(data)去除所有重复值

    构建矩阵allData,储存所有单词的序号、重复次数、单词内容。

    data_unique = set(data)
    allData = []
        
    for item in data_unique:
        id = data.index(item)
        num = data.count(item)
        allData.append([id,num,data[id].strip()])

    3、查找所有例句

    核心思想是使用.index()查找重复单词的所有例句,.index()只能查找找到的第一个单词的索引。根据重复单词的重复次数,把之前找到的单词有其他内容代替,然后循环查找,就能找到所有例句了。(引自:https://blog.csdn.net/qq_33094993/article/details/53584379,也叫“偷梁换柱”)

    nid = id
    for n in range(num-1):
        data[nid] = 'quchu'
        print(id, num, data[nid])
        nid = data.index(word)
        nwordData = sheet.row_values(nid)
        wSheet2.write(c2, 1+dlen+4*n, nwordData[6])
        wSheet2.write(c2, 1+dlen+4*n+1, nwordData[7])
        wSheet2.write(c2, 1+dlen+4*n+2, nwordData[8])
        wSheet2.write(c2, 1+dlen+4*n+3, nwordData[9])

    所有代码

    import xlwt,xlrd
    
    initialData = 'book.xlsx'
    workbook = xlrd.open_workbook(initialData)
    sheet_names = workbook.sheet_names()
    
    sheet = workbook.sheet_by_name(sheet_names[0])
    data = sheet.col_values(4)
    print(len(data))
    for i in range(len(data)):
        data[i] = data[i].strip()
        
    data_unique = set(data)
    allData = []
        
    for item in data_unique:
        id = data.index(item)
        num = data.count(item)
        allData.append([id,num,data[id].strip()])
    
    book = xlwt.Workbook(encoding='utf-8', style_compression=0)
    wSheet1 = book.add_sheet("noRepetition")
    wSheet2 = book.add_sheet("repetition")
    c1 = 0
    c2 = 0
    for d in allData:
        id = d[0]
        
        num = d[1]
        word = d[2]
        
        wordData = sheet.row_values(int(id))
        if num > 1:
            wSheet2.write(c2, 0, num)
            dlen = len(wordData)
            for i in range(dlen):
                wSheet2.write(c2, i+1, wordData[i])
            nid = id
            for n in range(num-1):
                data[nid] = 'quchu'
                print(id, num, data[nid])
                nid = data.index(word)
                nwordData = sheet.row_values(nid)
                wSheet2.write(c2, 1+dlen+4*n, nwordData[6])
                wSheet2.write(c2, 1+dlen+4*n+1, nwordData[7])
                wSheet2.write(c2, 1+dlen+4*n+2, nwordData[8])
                wSheet2.write(c2, 1+dlen+4*n+3, nwordData[9])
            c2 = c2 + 1
        else:
            for i in range(len(wordData)):
                wSheet1.write(c1, i, wordData[i])
            c1 = c1 + 1
    
    savePath = 'book_分离.xls'
    book.save(savePath)
    展开全文
  • # shelve用来做python的字典型数据库,并将其存储在磁盘上。 # shelve的key要求必须是字符串,value则可以是任意合法的python数据类型 db = shelve.open('videocheck.db') # 写入数据库 for h in hash_arr: fp_arr ...
  • 主要为大家详细介绍了python筛选两个文件中重复行的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • python查找重复的id

    2019-08-30 19:08:29
    temp[key] = temp[key] + 1 # 如果有重复的加1,temp判断循环多次 else: temp[key] = 1 else: all[key] = '1' # all判断只循环一次的 for key in temp: # 循环key,判断重复多次的id和次数 if temp[key] > 1: ...
    all = {}
    temp = {}
    
    with open('1.txt', 'r') as f:
        list1 = f.readlines()  # 读文件
    for i in range(0, len(list1)):
        key = list1[i]
        # print key
        if all.has_key(key):  # has_key() 函数用于判断键是否存在于字典中
            if temp.has_key(key):
                temp[key] = temp[key] + 1  # 如果有重复的加1,temp判断循环多次
            else:
                temp[key] = 1
        else:
            all[key] = '1'  # all判断只循环一次的
    
    for key in temp:  # 循环key,判断重复多次的id和次数
        if temp[key] > 1:
            print key, temp[key]

    结果为:

    10232303    #重复的id
    2                  #重复的次数
    931786
    2
    10221638
    2
    10196286
    2

     

    展开全文
  • 后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas前言有时候数据中出现重复值,可能会导致最后的统计结果出现错误,因此,查找和移除重复值是数据处理中的常见操作。今天我们来看看 ...

    9f2f070828381f303ad150a1b0150a0d6f06f08c.jpeg?token=6a86ad2b2c4e1ce68ad2e39f2cf5cdb7&s=741AC83384C07EEA4B54D6E40300E021

    经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死。后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas

    前言

    有时候数据中出现重复值,可能会导致最后的统计结果出现错误,因此,查找和移除重复值是数据处理中的常见操作。今天我们来看看 pandas 中是如何实现。

    Excel 处理重复值

    Excel 中直接提供了去除重复的功能,因此简单操作即可实现。如下:

    b219ebc4b74543a9ea97f8940703cc87b80114f6.jpeg?token=6509dcfff3eb02146ea407a31fe685d9&s=F1E0BF1A3301414F0C4830DA030010B2

    功能卡"数据","数据工具"中有"删除重复项"按钮接着可以选择以哪些列作为重复判断除此之外,Excel 中还可以使用条件格式、高级筛选或函数公式实现差不多的功能

    f9dcd100baa1cd1160d61634a5068ef9c3ce2d5e.jpeg?token=c1a29e60ef2f021195bbd0cc2513f0c0&s=B15AA37757174C655A5FF57B0300E038

    pandas 标记重复值

    pandas 中同样提供一个简单方法标记出重复值,并且比 Excel 有更多灵活处理方式供你选择,我们来看看:

    42a98226cffc1e1723224ebc5184b006728de9bc.jpeg?token=8a2f1ff727b6fa0d0dd158c81f77d36b&s=4A80E1029CA4869E2FA7EC9F0100E0C2

    DataFrame.duplicated() ,生成是否为重复记录的布尔标记。默认是整行所有数据作为判断依据结果很明显,最后一行是重复行,因此标记列最后一行的值是 True我们可以指定,当有重复值时,保留哪个位置的行。如下:

    902397dda144ad34bf969af0c9b64af131ad85b1.jpeg?token=818d8c4a3c6085c5b09db7c54536fa71&s=6A00C10294B4939C2FA5EC9F0100E0C2

    默认情况下,duplicated() 的 keep 参数为 "first",意思为"保留第一个"现在我们把 keep 设置为"last",那么保留最后一个,因此现在重复的行中的第一行被标记为 True除此之外,我们还可以把 keep 参数设置为 False,意思是"不保留",如下:

    0b55b319ebc4b74527c4b87cd6e858128a821524.jpeg?token=7107c3712a442900ea593caefdd4e271&s=4A04C1029CB5939E2FA76C9F0100C0C2

    现在凡是存在重复的行,都被标记 True通过参数 subset 可以指定哪些列作为判断依据:

    b03533fa828ba61ea90dafe75920d10f314e592b.jpeg?token=1e549ceab32aeb736e40a6d4d78fee3a&s=2204F10295B6179E2DB56C8F0100C0C2

    像 Excel 一样去除重复

    其实把重复值标记后,只需要简单筛选即可得到非重复的记录。但是 pandas 中有直接的方法去除重复。如下:

    024f78f0f736afc3d36ce59faa0dadc1b6451285.jpeg?token=35b115c16f3b400ae38288ead3586457&s=E1F2336633A5B34F0C519C0F0100D0C3

    调用 DataFrame.drop_duplicates() ,即可去除重复他的参数与规则与 duplicated 一模一样。实际就是把 duplicated() 标记为 True 的行去掉而已

    cdbf6c81800a19d8762232672aeec48ea61e464c.jpeg?token=423488d30c5ac443e39b23f87acba32b&s=1A3F6D80CB640C8EC21E460F0300E0DC

    最后

    DataFrame.duplicated() ,标记出重复项。使用 subset 指定重复值判断列,keep={'first','last',False} 指定怎么判断哪些是重复项DataFrame.drop_duplicates() ,去除重复项下一节,将看看排序功能的实现。敬请关注。

    如果希望从零开始学习 pandas ,那么可以看看我的 pandas 专栏。

    展开全文
  • python查找/删除重复记录

    千次阅读 2017-12-09 10:37:05
    1:查找重复项 df.duplicated()返回的是一个布尔型Series(返回值是True或者False),表示各行是否是重复行,可以在()内添加列名来查找某一列是否有重复值,第一个出现的值为False,后边再出现相同的行为True ...

    1:查找重复项

    df.duplicated()返回的是一个布尔型Series(返回值是True或者False),表示各行是否是重复行,可以在()内添加列名来查找某一列是否有重复值,第一个出现的值为False,后边再出现相同的行为True
    完全重复的项目 df.duplicated()  /  某一列重复df.duplicated('列名')

    aa = [[1,2,3],[4,5,6],[1,2,3],[1,2,1]]  
    index = [0,1,2,3]  
    columns=['a','b','c']  
    df = pd.DataFrame(data=aa, index=index, columns=columns)  

     

     abc
    0123
    1456
    2123
    3121

     

     

     

    df.duplicated()

     

    0    False
    1    False
    2     True
    3    False
    dtype: bool

     

     

    df.duplicated('a') 

     

    0    False
    1    False
    2     True
    3     True
    dtype: bool


    查看重复的数量,返回结果为True都是前面出现过的
    volume_summery[volume_summery.duplicated('order_item_id')==True].shape

     

     

     

     

    2:删除重复项

    df.drop_duplicates()删除完全重复的项,返回不重复的项目

     

     abc
    0123
    1456
    3121

     


    df.drop_duplicates(['列名']) 以该列为标准,删除重复的项目,返回不重复的项目

     

     

     abc
    0123
    1456

     

     

     

    展开全文
  • 主要介绍了Python查找最长不包含重复字符的子字符串算法,涉及Python字符串遍历、统计相关操作技巧,需要的朋友可以参考下
  • python——找出重复数字

    千次阅读 2019-04-10 23:34:42
    一个整型数组里除了两个数字...请写程序找出这两个只出现一次的数字。 class Solution: # 返回[a,b] 其中ab是出现一次的两个数字 def FindNumsAppearOnce(self, array): # write code here dic={} list=[] fo...
  • python找出列表重复

    千次阅读 2017-12-06 09:21:43
    a = ['l', 'i', 'u', 'h', 'a', 'i', 'w', 'e', 'n'] print [val for val in list(set(a)) if a.count(val)==2] [root@iZ94h14przhZ ...~]# python python_list.py ['i']
  • python 查找列表中的重复元素

    千次阅读 2019-10-22 09:37:30
    # 查找列表中的重复元素 def find_duplicate(arr): set_arr = set() dup = set() for x in arr: if x not in set_arr: set_arr.add(x) else: dup.add(x) return du...
  • 找出数组中重复的数字。 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 ...
  • """ ...相等就认为找到了重复元素,返回true,否则就交换两者,继续循环。直到最后还没找到认为没找到重复元素。 """ # -*- coding:utf-8 -*- def repeat_num(arrayA: list) -> int: dup ={} ...
  • python找出数据中的重复数据

    万次阅读 多人点赞 2019-02-28 14:20:51
    如果要找出哪些元素是重复的,可以用pandas库的dataframe数据结构,用drop_duplicates方法进行去重。原理是这样:drop_duplicates方法可以完全清除重复元素,比如[1, 2, 2, 3],经过drop_duplic...
  • python删除重复文件

    千次阅读 2020-01-29 20:14:24
    网上爬取的图片重复量太大,需要删除重复图片。 环境 python 3 hashilib 分析一下这个问题: 首先,文件个数非常多,手工查找是不现实的,再说,单凭我们肉眼,在几千张图片或文件里面找到完全相同的难度也是...
  • d = {} for line in open('a.txt'): d[line] = d.get(line, 0) + 1 fd = open('b.txt', 'w') for k, v in d.items(): if v > 1: fd.write(k) fd.close()
  • python数组找出重复元素

    千次阅读 2018-07-25 19:30:53
    来自:
  • Python实现:输入一个项目列表,返回相邻位置不同值的项目列表
  • python 查找列表中重复的数据

    千次阅读 2020-03-14 20:22:09
    def find_repeat_data... 查找列表中重复的数据 :param name_list: :return: 一个重复数据的列表,列表中字典的key 是重复的数据,value 是重复的次数 """ repeat_list = [] for i in set(name_list): re...
  • jmu-python-重复元素判定 python

    万次阅读 2019-04-17 21:39:59
    7-2 jmu-python-重复元素判定 (20 分) 每一个列表中只要有一个元素出现两次,那么该列表即被判定为包含重复元素。 编写函数判定列表中是否包含重复元素,如果包含返回True,否则返回False。 然后使用该函数对n...
  • I want to find the matching item from the below given list.My List may be super large.The very first item in the tuple "N1_10" is duplicated and matched with another item in another arraytuple in 1st ...
  • Python列表查找重复元素的几种方法

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 143,618
精华内容 57,447
关键字:

python找出重复行

python 订阅