Print

如何返回重复值的位置

问:MATLAB如何找到数组中重复值的位置
  1. 答:1、实现方法
    使用find()函数:[m,n]=find(A==x)
    2、解析
    A==x:将矩阵A的每个元素与x比较,如果相等,相应位置的元素就等于1,否则为0。
    find(X):返回X中非零元素的索引(即行列位置)。
    3、实例演示:找出矩阵A中所有等于3的元素的行列位置
    打开matlab,在命令窗口运行如下代码:
    >>
    A=[1
    2
    3
    4
    5;6
    7
    3
    1
    2]
    >>
    [m,n]=find(A==3)
    从运行结果可知,找到A中元素3的位置为:第1行第3列

    第2行第3列。
问:Excel 中,查找D列所有重复值并返回对应A列值
  1. 答:检查D列所有重复值并返回对应A列数据的步骤是:
    1、打开Excel工作表;
    2、观察数据规律,D列存在较多组的重复值,对应的A列数据个数也不确定,因此需要先将D列重复数据整理出来,然后再筛选出其对应的A列数据。
    3、在F2单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式
    =IFERROR(INDEX(D:D,SMALL(IF((COUNTIF(D$1:D$10,D$1:D$10)>1)*(MATCH(D$1:D$10,D$1:D$10,0)=ROW($1:$10)),ROW($1:$10),4^8),ROW(A1))),"")
    公式表示:定位到D列,将满足出现次数超过1次的数据不重复地筛选出来。
    4、在G2单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向右向下填充公式
    =INDEX($A:$A,SMALL(IF($D$1:$D$10=$F2,ROW($1:$10),4^8),COLUMN(A1)))&""
    公式表示:定位到A列,将满足D列等于F2条件的对应A列数据筛选出来,逐一罗列。
  2. 答:D列有相同值,相同值对应不同的A列值。
    用VLOOKUP函数求一对一或一对多比较容易,求多对一就不太容易了。
  3. 答:D与A列是一对多的关系,你只要将D列放到A列前面,并排序就可以看到其对应的A列值了啊?
    若有问题,继续追问
问:如何用EXCEL找出重复值的位置
  1. 答:="H"&SMALL(IF($J5=$H$5:$H$9999,ROW($H$5:$H$9999),10000),2)
    J5在H列中的第二个位置用这个公式,其中的2可以用column(b1)来代替,然后右拉得到3。
    这是个数组公式,按CTRL+SHIFT+回车结束,再下拉才行。
  2. 答:在C1输入公式:
    ="A"&MATCH(B1,A:A,)
    公式以CTRL+SHIFT+ENTER三键结束。
    将公式向下复制

本文来源: https://www.lunwen00.cn/article/f7d20f097cad03aa9164ea0c.html