我有以下数据集,已在此处修剪。它有大约 3K 行,一遍又一遍地重复相同的部分,但值略有不同。颜色重复且永不改变,但每种颜色的 B:G 中的值可能会改变。
我正在尝试计算每种颜色中某个值(例如 Oscar)出现的行数。对于此处的示例数据集,Oscar 将收到红色值 1,因为有两行的颜色为红色,而他只出现在其中的一行中。同样,他会因为紫色而收到 2,因为他出现在紫色的 2 行中。
我遇到的困难是我不断地计算某种颜色的名称出现的次数。我得到的最接近的是下面这个,其中 K22:K30 是颜色列表,Q21:30 是名称。
=COUNT(IF(FILTER($A:$G,$K22=$A:$A)=Q$21,1,""))
感谢任何帮助,谢谢。
A | B | C | D | E | F | G |
---|---|---|---|---|---|---|
蓝色 | 约翰 | 布莱恩 | 史蒂夫 | 戴尔 | 布雷迪 | 巷 |
绿色 | 史蒂夫 | 戴尔 | 凯尔 | 凯尔 | 凯尔 | 凯尔 |
红色 | 史蒂夫 | 詹姆斯 | 詹姆斯 | 詹姆斯 | 戴尔 | 戴尔 |
黄色 | 约翰 | 布莱恩 | 布莱恩 | 布莱恩 | 约翰 | 约翰 |
橙色 | 约翰 | 彼得 | 戴夫 | 戴夫 | 戴夫 | 戴夫 |
紫色 | 约翰 | 彼得 | 彼得 | 彼得 | 奥斯卡 | 奥斯卡 |
粉色 | 戴尔 | 史蒂夫 | 奥斯卡 | 奥斯卡 | 奥斯卡 | 奥斯卡 |
黑色 | 迈克 | 迈克 | 迈克 | 迈克 | 戴尔 | 凯尔 |
青色 | 奥斯汀 | 奥斯汀 | 奥斯汀 | 戴尔 | 史蒂夫 | 史蒂夫 |
蓝色 | 约翰 | 布莱恩 | 史蒂夫 | 戴尔 | 布雷迪 | 巷 |
绿色 | 史蒂夫 | 戴尔 | 凯尔 | 凯尔 | 凯尔 | 凯尔 |
红色 | 奥斯卡 | 奥斯卡 | 奥斯卡 | 奥斯卡 | 奥斯卡 | 奥斯卡 |
黄色 | 约翰 | 布莱恩 | 布莱恩 | 布莱恩 | 约翰 | 约翰 |
橙色 | 约翰 | 彼得 | 戴夫 | 戴夫 | 戴夫 | 戴夫 |
紫色 | 约翰 | 彼得 | 彼得 | 彼得 | 奥斯卡 | 奥斯卡 |
粉色 | 戴尔 | 史蒂夫 | 奥斯卡 | 奥斯卡 | 奥斯卡 | 奥斯卡 |
黑色 | 迈克 | 迈克 | 迈克 | 迈克 | 戴尔 | 凯尔 |
青色 | 奥斯汀 | 奥斯汀 | 奥斯汀 | 戴尔 | 史蒂夫 | 史蒂夫 |
如果我没有弄错的话,您似乎正在寻找以下计数:
• 方法 1: 使用
MMULT()
=SUM(--(MMULT(N(FILTER($B$1:$G$18,J$2=$A$1:$A$18)=$I3),SEQUENCE(COLUMNS(B1:G18)))>0))
• 方法 2: 将
BYROW()
与 LAMBDA()
构造一起使用
=SUM(--(BYROW(N(FILTER($B$1:$G$18,J$2=$A$1:$A$18)=$I3),LAMBDA(x,OR(x)))))
• 方法 3: 将
BYROW()
与 ETA LAMBDA
构造一起使用
=SUM(--(BYROW(N(FILTER($B$1:$G$18,J$2=$A$1:$A$18)=$I3),OR)))