簡體   English   中英

EXCEL:計算唯一值的組合

[英]EXCEL: count combinations for unique values

我試圖在excel中計算以下各項:我有多個X的唯一值(例如4),每個值在數據集中出現兩次(以隨機順序)。 我想計算X的每個值在第二列Y上的每個值組合(不考慮順序)的數量。

示例(按順序排列):

X Y

1 A
1 D
2 A
2 C
3 B
3 C
4 A
4 D

作為輸出,我需要:

n A,D 2
n A,C 1
n B,C 1
n B,D 0

(假設所有其他組合都不存在。)

是否可以在不重新排列數據的情況下進行? 我不介意輸入4個公式(每種可能的組合)。 我的出發點與此類似: excel對列的唯一組合進行計數 ,但是我無法完全弄清楚,而且我知道對excel或編碼幾乎沒有什么感覺……

要獲得數據不正確時的對數,第一個需要通過X獲得對。創建X的唯一列表並使用以下公式:

=CHAR(AGGREGATE(15,6,CODE($B$2:$B$9)/($A$2:$A$9=D2),1))&","&CHAR(AGGREGATE(15,6,CODE($B$2:$B$9)/($A$2:$A$9=D2),2))

請注意,這僅在Y是像您的數據這樣的一個字符時才有效。

在此處輸入圖片說明

然后創建該輸出的唯一列表,並使用標准COUNTIF:

=COUNTIF(E:E,G2)

在此處輸入圖片說明

或者,您可以在第一個幫助器列上使用數據透視表來獲取相同的數據,而無需獲取唯一的配對。

如果使用幫助器列,則可以將數據合並為可以計數的內容。 在C列中使用公式=IF(A2<>A1,B2,C1&","&B2) 。因此,您的數據將變為:

X Y 
1 A A
1 D A,D
2 A A
2 C A,C
3 B B
3 C B,C
4 A A
4 D A,D

然后就可以算出組合數了。 這是我的示例的快照:

在此處輸入圖片說明

您可以為此使用MMULT函數,例如(您可以使用Alt + Enter插入換行符,但不必這樣做,如果您在同一行上編寫它也可以使用):

=SUMPRODUCT(
  --($B$2:$B$19=  LEFT($D2,FIND(",",$D2)-1)  ),
  MMULT(
    --($A$2:$A$19=TRANSPOSE($A$2:$A$19)),
    --($B$2:$B$19=  MID($D2,FIND(",",$D2)+1,LEN($D2))  )))

您必須將其作為數組公式輸入(鍵入后,按Ctrl + Shift + Enter,而不僅僅是Enter;您將在括號內看到該公式,例如:{= ...})。

這是一個截圖,顯示了公式中的范圍是什么意思: Excel屏幕截圖

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM