在R中比较两个矩阵是否相等

这篇具有很好参考价值的文章主要介绍了在R中比较两个矩阵是否相等。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

方法一:使用all.equal()比较两个R对象是否近似相等

方法二:使用identical比较两个R对象是否精确相等。


方法一:使用all.equal()比较两个R对象是否近似相等

使用函数:all.equal(x,y) 比较两个R对象x和y是否近似相等

> M1<-matrix(1:100,ncol=10)
> M1
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    1   11   21   31   41   51   61   71   81    91
 [2,]    2   12   22   32   42   52   62   72   82    92
 [3,]    3   13   23   33   43   53   63   73   83    93
 [4,]    4   14   24   34   44   54   64   74   84    94
 [5,]    5   15   25   35   45   55   65   75   85    95
 [6,]    6   16   26   36   46   56   66   76   86    96
 [7,]    7   17   27   37   47   57   67   77   87    97
 [8,]    8   18   28   38   48   58   68   78   88    98
 [9,]    9   19   29   39   49   59   69   79   89    99
[10,]   10   20   30   40   50   60   70   80   90   100
> M2<-matrix(1:100,ncol=10)
> M2
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    1   11   21   31   41   51   61   71   81    91
 [2,]    2   12   22   32   42   52   62   72   82    92
 [3,]    3   13   23   33   43   53   63   73   83    93
 [4,]    4   14   24   34   44   54   64   74   84    94
 [5,]    5   15   25   35   45   55   65   75   85    95
 [6,]    6   16   26   36   46   56   66   76   86    96
 [7,]    7   17   27   37   47   57   67   77   87    97
 [8,]    8   18   28   38   48   58   68   78   88    98
 [9,]    9   19   29   39   49   59   69   79   89    99
[10,]   10   20   30   40   50   60   70   80   90   100
> all.equal(M1,M2)
[1] TRUE

在帮助文件中的解释:

在R中比较两个矩阵是否相等,R编程练习,r语言,笔记

 从帮助文件中的解释,我们可以知道all.equal(x,y)用于比较x与y是否近似相等。如果他们不同,会在某种程度上继续进行比较,并在console中返回差异报告。建议在if表达式中,不要直接使用all.equal函数,而是使用isTRUE(all.equal(...))或者使用identical()函数。

方法二:使用identical比较两个R对象是否精确相等。

identical(x,y)用于比较两个R对象是否完全相等(exactly equal)

 identical()函数的帮助文件中的说明:

在R中比较两个矩阵是否相等,R编程练习,r语言,笔记

 由此可知,测试两个对象是否完全相等的安全可靠的方法。在这种情况下返回TRUE,其他情况下返回FALSE。

> M1<-matrix(1:100,ncol=10)
> M1
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    1   11   21   31   41   51   61   71   81    91
 [2,]    2   12   22   32   42   52   62   72   82    92
 [3,]    3   13   23   33   43   53   63   73   83    93
 [4,]    4   14   24   34   44   54   64   74   84    94
 [5,]    5   15   25   35   45   55   65   75   85    95
 [6,]    6   16   26   36   46   56   66   76   86    96
 [7,]    7   17   27   37   47   57   67   77   87    97
 [8,]    8   18   28   38   48   58   68   78   88    98
 [9,]    9   19   29   39   49   59   69   79   89    99
[10,]   10   20   30   40   50   60   70   80   90   100
> M2<-matrix(1:100,ncol=10)
> M2
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    1   11   21   31   41   51   61   71   81    91
 [2,]    2   12   22   32   42   52   62   72   82    92
 [3,]    3   13   23   33   43   53   63   73   83    93
 [4,]    4   14   24   34   44   54   64   74   84    94
 [5,]    5   15   25   35   45   55   65   75   85    95
 [6,]    6   16   26   36   46   56   66   76   86    96
 [7,]    7   17   27   37   47   57   67   77   87    97
 [8,]    8   18   28   38   48   58   68   78   88    98
 [9,]    9   19   29   39   49   59   69   79   89    99
[10,]   10   20   30   40   50   60   70   80   90   100
> identical(M1,M2)
[1] TRUE
> typeof(M1)
[1] "integer"
> typeof(M2)
[1] "integer"

注:使用identical()函数比较两个R对象是否完全相等时,如果不相等,要注意查看是否是数据类型不同,比如一个数据类型是double,一个数据类型是integer。

参考:

如何检查R中两个矩阵是否相等?-面圈网 (mianshigee.com) (介绍all.equal函数的相关示例)

如何在 R 中使用 identical() 函数 - 知乎 (zhihu.com) (介绍identical函数的相关示例)文章来源地址https://www.toymoban.com/news/detail-634307.html

到了这里,关于在R中比较两个矩阵是否相等的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java中怎么比较两个自定义实体对象是否相等(比如在Set数据结构中去重)

    有一个类Person,需要判断Account类的对象account1,account2是否相等。 判断规则为,当id(int类型判断是否带下相等)和department(判断字符串内容是否相等)属性均相等时(默认两个属性都必须非空,若有属性为空则认为两个对象不等),则认为该Account类对象相等。 以下开始介绍如何

    2024年02月16日
    浏览(60)
  • Go语言如何判断两个对象是否相等

    在编程中,判断两个对象是否相等是一项常见的任务,同时判断对象是否相等在很多情况下都非常重要,例如: 单元测试 :编写单元测试时,经常需要验证函数的输出是否符合预期,这涉及到比较对象是否相等。 数据结构操作 :在使用 map 等数据结构时,可能需要判断两个对

    2024年02月07日
    浏览(145)
  • Linux shell编程学习笔记44:编写一个脚本,将md5sum命令执行结果保存到变量中,进而比较两个文件内容是否相同

    在  Linux shell编程学习笔记42:md5sum https://blog.csdn.net/Purpleendurer/article/details/137125672?spm=1001.2014.3001.5501 中,我们提到编写一个在Linux系统下比较两个文件内容是否相同的脚本。 基本思路是: 其中有两个难点: 1.文件的md5值的获取 2.md5值的比较 对于第1个难点,我们的解决办法是

    2024年04月10日
    浏览(75)
  • 判断两个数组是否相等

    在判断两个数组是否相等之前,我们应该弄清楚数组怎样才算相等,官方给的解释是这样的: Returns true if the two specified arrays of ints are equal to one another. Two arrays are considered equal if both arrays contain the same number of elements, and all corresponding pairs of elements in the two arrays are equal. In other

    2024年02月15日
    浏览(62)
  • 判断两个vector数组是否相等

    判断两个vector数组是否相等是可以直接使用==或者!=的 因为vector内部都进行了相关运算符的重载,还可以进行比较大小 下面这道简单搜索题就用到了这个性质,浅看一下吧 【问题描述】给定一个n个整数的集合X={x1,x2,…xn}(X中可能包含重复元素)和整数y,找出和等于y的X的子集

    2024年02月12日
    浏览(64)
  • Js如何判断两个数组是否相等?

    日常开发,时不时会遇到需要判定2个数组是否相等的情况,需要实现考虑的场景有: 先判断长度,长度不等必然不等 元素位置 其他情况考虑 \\\'1\\\' 和 1 (Object的key是字符串, Map的key没有限制) NaN null 和 undefined 数组自带的方法,比较适合的有: every、some、filter、findIndex 。 这种

    2024年02月22日
    浏览(68)
  • Java中比较Long类型是否相等

    Java中,比较Long类型是否相等,可以使用“==”和“equals()”方法。 在Java中,\\\"==\\\"用于比较两个基本数据类型或两个引用数据类型是否指向同一对象。对于Long类型的封装类,由于它们的值在-128到127之间时会被缓存,因此这些值相同的Long型对象会指向同一个对象,使用\\\"==\\\"比较会

    2024年02月05日
    浏览(39)
  • java 判断两个List是否包含 判断两个list相等

    java 判断两个List是否包含 判断两个list相等 https://blog.51cto.com/u_12855/7333853 1、直接使用equals()比较 众所周知,两个列表具有完全相同的元素并且具有完全相同的顺序时,它们是相等的。因此, 如果我们业务要求两个list顺序一致,可以使用equals()方法进行相等性检查: 即使

    2024年02月04日
    浏览(66)
  • 记录--如何判断两个数组的内容是否相等

    给定两个数组,判断两数组内容是否相等。 不使用排序 不考虑元素位置 例: 思考几秒:有了😀😀 直接遍历第一个数组,并判断是否存在于在第二个数组中 求差集, 如果差集数组有长度,也说明两数组不等(个人感觉比上面的麻烦就不举例了) 细心的小伙伴就会发现:N

    2024年02月08日
    浏览(157)
  • java中比较两字符串是否相等

    字符串比较的三种方式:==,equals,Objects.equals  打印结果 a==b为false 因为两个字符串的索引值不同。 打印结果为  a.equals(b)为true 因为两个字符串的值相同。 所以在java中进行字符串比较时,经常使用equals比较两字符是否相同。一个固定的字符串和字符串数组(或list集合)进行

    2023年04月08日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包