zoukankan      html  css  js  c++  java
  • R语言常用函数:交集intersect、并集union、找不同setdiff、判断相同setequal

    在R语言进行数据分析时,经常需要找不同组间的相同和不同,那你应该掌握如下几个函数,让你事半功倍。

    交集intersect
    两个向量的交集,集合可以是数字、字符串等

    # 两个数值向量取交集
    intersect(x=1:4, y = 2:6)
    # [1] 2 3 4

    # 两个字符向量取交集
    intersect(x=letters[1:4], y = letters[2:6])
    # [1] "b" "c" "d"

    # 混合向量
    intersect(x=c("a", "b", "c", 4), y = c("a", 2, 3, 4))
    [1] "a" "4"
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    并集union
    求两个向量的并集,集合可以是任何数值类型

    # 两个数值向量取并集
    union(x=1:4, y = 2:6)
    # [1] 1 2 3 4 5 6

    # 两个字符向量取并集
    union(x=letters[1:4], y = letters[2:6])
    # [1] "a" "b" "c" "d" "e" "f"

    # 混合向量
    union(x=c("a", "b", "c", 4), y = c("a", 2, 3, 4))
    [1] "a" "b" "c" "4" "2" "3"
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    找不同setdiff
    求向量x与向量y中不同的元素(只取x中不同的元素)
    setdiff(x, y)

    x = 1:4
    y = 2:6
    # 找x中不同于y的元素
    setdiff(x, y)
    # [1] 1
    # 找y中不同于x的元素
    setdiff(y, x)
    # [1] 5 6
    1
    2
    3
    4
    5
    6
    7
    8
    判断相同setequal
    x = 1:4
    y = 2:6
    # 判断x与y是否相同,结果为假
    setequal(x, y)
    # [1] FALSE
    # 找y与x是否相同,结果为假
    setequal(y, x)
    # [1] FALSE

    # 只有完全相同的才返回TRUE
    y = 1:4
    setequal(x, y)
    # [1] TRUE

  • 相关阅读:
    idea搭建Spring Boot+Mybatis及使用教程
    CentOS 6 安装配置JDK+tomcat环境
    关于无线路由器之间的连接
    关于链表的面试问题(判断一个单链表中是否有环)
    华为机试ACM(字符组合问题)
    Activity的启动模式
    Notification状态栏显示信息
    Java注释Override、Deprecated、SuppressWarnings
    Fragment
    Service
  • 原文地址:https://www.cnblogs.com/nkwy2012/p/10147325.html
Copyright © 2011-2022 走看看