Python去重函数_python去重的方法

Python去重函数_python去重的方法栗子1:利用setL1=(1,1,2,2,3,3)print(set(L1))结果为:{1,2,3}栗子2:利用np.uniqueimportnumpyasnpL1=(1,1,2,2,3,3)print(np.unique(L1))结果为:[123]栗子3:利用循环importnumpyasnpL1…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

栗子1:利用 set

L1 = (1, 1, 2, 2, 3, 3)
print(set(L1))

Jetbrains全家桶1年46,售后保障稳定

结果为: {1, 2, 3}

知识点拓展:集合元素的访问

集合元素可以通过转化为列表来进行访问,对于集合,存在交集、并集、差集等等很多操作。

L1 = { 
   1, 2, 5}
L2 = list(L1)[1]
print(L2)

栗子2:利用 np.unique

import numpy as np
L1 = (1, 1, 2, 2, 3, 3)
print(np.unique(L1))

结果为: [1 2 3]


栗子3:利用循环

import numpy as np
L1 = (1, 1, 2, 2, 3, 3)
L2 = list(L1)
L3 = []

for i in L2:
    if i not in L3:
        L3.append(i)
print(L3)

结果为: [1, 2, 3]


以下来自博客:Python 二维数组元素去重 np.unique()函数的使用

import numpy as np

# 4.2.1 一维数组去重
a = np.array([1, 2, 3, 4, 5, 5, 7, 3, 2, 2, 8, 8])
print('去重前:', a)  # 去重前: [1 2 3 4 5 5 7 3 2 2 8 8]
b = np.unique(a)
print('去重后:', b)  # 去重后: [1 2 3 4 5 7 8]

# 4.2.2 二维数组去重
c = np.array(((1, 2), (3, 4), (5, 6), (1, 3), (3, 4), (7, 6)))
print('去重前:', c)
# 方法一:利用set,set是无序不重复集合(推荐)
s = set() #创建空集合
for t in c:
    s.add(tuple(t)) #将数组转为元祖tuple,保证不被修改;再把元祖加入到集合中,完成去重
g = np.array(list(s)) # 将集合转换为列表,最后转为二维数组
print('去重后:', g)
# 合起来写
print('方法一去重后:', np.array(list(set(tuple(t) for t in c))))
# 方法二:转换为虚数
r, i = np.split(c, (1, ), axis=1)
print(r)
print(i)
x = r + i * 1j
# x = c[:, 0] + c[:, 1] * 1j
print('转换成虚数:', x)  # 变成一维数组,可使用np.unique()
print('虚数去重后:', np.unique(x))
print(np.unique(x, return_index=True, return_counts=True))
# return_index=True表示返回另一个参数,这个参数也是一个数组,
# array([0, 3, 1, 2, 5]表示去重后的每个元素在去重前的数组中的位置/下标
# return_counts=True表示返回各元素出现的频次
idx = np.unique(x, return_index=True)[1]
# 第[1]列的数组正是return_index=True返回的内容:在c中的位置/下标
print('二维数组去重:\n', c[idx]) #提取这些下标所在的元素

字符串去重: python中join函数

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234728.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • tar 打包的时候如何去掉目录前缀

    tar 打包的时候如何去掉目录前缀文章转载自:freefly的博客,对原作者表示感谢。问题:tarczfxx.tgz/xxx/xxx/A然后希望xx.tgz或xx.tar.gz里面就直接A这个目录不希望加前导xxx/xxx,我知道可以先cp这个目录到同一个目录再打包,不过想知道可以不可以不用另外cp到同一个目录 答案1:使用-C指定相对路径,如:tarczfx

    2022年5月6日
    77
  • SAP Fiori refreshSecurityToken

    SAP Fiori refreshSecurityTokenCreatedbyWang,Jerry,lastmodifiedonMar26,2015要获取更多Jerry的原创文章,请关注公众号”汪子熙”:

    2022年10月27日
    0
  • 回顾JPS命令_实时打印日志命令

    回顾JPS命令_实时打印日志命令一概述jps是jdk提供的一个查看当前java进程的小工具,可以看做是JavaVirtualMachineProcessStatusTool的缩写。非常简单实用。命令格式:jps[options][hostid][options]选项:-q:仅输出VM标识符,不包括classname,jarname,argumentsinmainmethod-m:输出mainmethod的参数-l:输出完全…

    2022年9月15日
    0
  • php面试题目2020_php算法面试题及答案

    php面试题目2020_php算法面试题及答案2019最新整理PHP面试题附答案1、什么事面向对象?主要特征是什么?面向对象是程序的一种设计方式,它利于提高程序的重用性,使程序结构更加清晰。主要特征:封装、继承、多态。2、SESSION与COOKIE的区别是什么,请从协议,产生的原因与作用说明?A、http无状态协议,不能区分用户是否是从同一个网站上来的,同一个用户请求不同的页面不能看做是同一个用户。B、SESSION存储在服…

    2022年8月26日
    3
  • java实现重建二叉树

    java实现重建二叉树题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:根据题目给出的前序遍历、后序遍历数组,首先找出根节点然后再根据中序遍历找到左子树和右子树的长度,分别构造出左右子树的前序遍历和中序遍

    2022年6月13日
    24
  • MessageDigest简单介绍

    MessageDigest简单介绍本文博客原文參考文章:http://blog.sina.com.cn/s/blog_4f36423201000c1e.html一、概述java.security.MessageDigest类用于为应用

    2022年6月30日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号