基於多條件匹配的行計數如果 3 列 (ABC) 匹配,我想計算數據集中的行數。 我想在新列 (D) 中輸入值。 這是一個例子。 謝謝您的幫助!
| A欄 | B欄 | C欄 | D 欄(計數) |
| 7 | Z | S | 4 |
| 7 | Z | S | 4 |
| 1 | A | 磷 | 3 |
| 1 | A | 磷 | 3 |
| 1 | A | 磷 | 3 |
| 7 | Z | S | 4 |
| 5 | 乙 | 中號 | 2 |
| 5 | 乙 | 中號 | 2 |
| 7 | Z | S | 4 |
回复:根據多條件匹配計算行數我很高興這個公式@多發性硬化症為您發布作品! 我很好奇為什麼我的方法在您的實際表上失敗了,但也許我們的時間最好花在您的其他問題上,而不是診斷我的劣質兩列方法出了什麼問題!
我能問一下創建該計數可以解決什麼問題嗎? 通過這樣做,您似乎最終會得到一列 1,因為無論模式出現的次數如何,您都將其計為 1。 我認為我沒有完全理解你想要做什麼或者它能幫助你完成什麼。 我想如果我知道最終目標,我也許能夠提出比一系列公式列更簡單的整體方法。
@朱利安
回复:根據多條件匹配計算行數我仍然無法使其正常工作。 朱利安建議的 2 個方程版本 - 第一個方程給了我全 1,所以不確定我做錯了什麼。 單方程方法確實給出了每個 SOG 中特定存儲桶出現的總次數。 我仍在嘗試獲得的另一部分是我必須抓住水桶的次數。 例如,如果我抓起一個桶並採集 4 個樣本,或者再次抓起它並採集 19 個樣本 - 在每種情況下我只抓了一次桶。 從我的數據示例來看,EXULU 在 621 SOG 中總共出現了 4 次。 我想創建一個將這 4 次算作 1 次的計數。 EH8QK 在 621 SOG 中總共出現了 19 次,但我想將它們全部算作 1。 我希望這能更好地解釋問題的後半部分。 謝謝你!
回复:根據多條件匹配計算行數使用兩列進行計數的另一種方法是使用 ColNumber() 函數對每個組合的行進行計數。
例如:
Col Number(Row(), :J1, :SOG, :BUCKET);
</CODE></P>
<P> </P>
<P> </P>
<P> </P></LINGO-BODY><LINGO-SUB id="lingo-sub-214889" slang="en-US" mode="NONE">回复:根據多條件匹配計算行數</LINGO-SUB><LINGO-BODY id="lingo-body-214889" slang="en-US" mode="NONE"><P>你好<A href="https://community.jmp.com/t5/user/viewprofilepage/user-id/14945" target="_blank">@Sciguy_1</A> ,</P>
<P> </P>
<P>這是一個表格,它使用我之前展示的公式來完成我認為您所追求的目標,但針對每種組合進行了調整。 我對“桶出現次數:SOG(正確答案)”的計算與您所說的手動創建的不匹配,但我很確定我在這裡所做的事情是正確的,因為它與我自己的手動計數相符。 你能檢查並確認我沒有遺漏什麼嗎?</P>
<P> </P>
<P>你會發現你需要一個<STRONG>一對柱</STRONG>對於每個計數,一個在每個分組中遞增計數,另一個計算總數。 我已經隱藏了表中的增量計數列,但請注意,您必須擁有這些列。 您可以將其推廣到實際上任意數量的組合,您只需調整如下所示的公式以將正確的列包含為您的分組:</P>
<P> </P>
<P><SPAN class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screen Shot 2019-06-26 at 5.20.49 PM.png" style="width: 374px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="Screen Shot 2019-06-26 at 5.20.49 PM.png" style="width: 374px;"><span class="lia-inline-image-display-wrapper" image-alt="Screen Shot 2019-06-26 at 5.20.49 PM.png" style="width: 374px;"><img src="https://us.v-cdn.net/6038925/uploads/images/18030i629C729C275487D5/Screen%20Shot%202019-06-26%20at%205.20.49%20PM.png" role="button" title="Screen Shot 2019-06-26 at 5.20.49 PM.png" alt="Screen Shot 2019-06-26 at 5.20.49 PM.png" /></span></SPAN></SPAN></P>
<P> </P>
<P><SPAN class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screen Shot 2019-06-26 at 5.20.54 PM.png" style="width: 536px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="Screen Shot 2019-06-26 at 5.20.54 PM.png" style="width: 536px;"><span class="lia-inline-image-display-wrapper" image-alt="Screen Shot 2019-06-26 at 5.20.54 PM.png" style="width: 536px;"><img src="https://us.v-cdn.net/6038925/uploads/images/18031i3CBC6C15082459EE/Screen%20Shot%202019-06-26%20at%205.20.54%20PM.png" role="button" title="Screen Shot 2019-06-26 at 5.20.54 PM.png" alt="Screen Shot 2019-06-26 at 5.20.54 PM.png" /></span></SPAN></SPAN></P>
<P> </P>
<P>希望這能讓你走得更遠</P>
<P><A href="https://community.jmp.com/t5/user/viewprofilepage/user-id/2026" target="_blank">@朱利安</A></P></LINGO-BODY><LINGO-SUB id="lingo-sub-214377" slang="en-US" mode="NONE">回复:根據多條件匹配計算行數</LINGO-SUB><LINGO-BODY id="lingo-body-214377" slang="en-US" mode="NONE">我發現我犯了一個錯誤。 最後一列 jar_id 上的標題等於 J1 列。 還想知道每個 J1 X SOG X BUCKET 組合發生 T1 的次數。 謝謝。</LINGO-BODY><LINGO-SUB id="lingo-sub-214361" slang="en-US" mode="NONE">回复:根據多條件匹配計算行數</LINGO-SUB><LINGO-BODY id="lingo-body-214361" slang="en-US" mode="NONE"><P>你是對的,每一行都是唯一的。 這是真實數據集的子集。 我創建了幾個專欄來代表我想要完成的任務。 我手動填充了“每個 SOG 中 BUCKET 出現的次數”列。NULL 值可以被視為其自己的 BUCKET。 第二列需要顯示 J1 出現的次數:SOG X BUCKET 組合。 希望這能讓事情變得更容易,感謝您的幫助。</P></LINGO-BODY><LINGO-SUB id="lingo-sub-214360" slang="en-US" mode="NONE">回复:根據多條件匹配計算行數</LINGO-SUB><LINGO-BODY id="lingo-body-214360" slang="en-US" mode="NONE"><P>你是對的,每一行都是唯一的。 這是真實數據集的子集。 我創建了幾個專欄來代表我想要完成的任務。 我手動填充了“每個 SOG 中 BUCKET 出現的次數”列。NULL 值可以被視為其自己的 BUCKET。 第二列需要顯示 J1 出現的次數:SOG X BUCKET 組合。 希望這能讓事情變得更容易,感謝您的幫助。</P></LINGO-BODY><LINGO-SUB id="lingo-sub-214152" slang="en-US" mode="NONE">回复:根據多條件匹配計算行數</LINGO-SUB><LINGO-BODY id="lingo-body-214152" slang="en-US" mode="NONE"><P>看來表中的每一行都是唯一的,因此我希望整個表的“每個 JAR X BUCKET X SOG 出現的次數管”為 1。 我是否誤解了這種格式?</P>
<P> </P>
<P>另外,附加 JMP 數據表或其子集以及完整的列公式將更有利於診斷正在發生的情況,而不是將表粘貼到消息正文中。</P></LINGO-BODY><LINGO-SUB id="lingo-sub-214149" slang="en-US" mode="NONE">回复:根據多條件匹配計算行數</LINGO-SUB><LINGO-BODY id="lingo-body-214149" slang="en-US" mode="NONE"><P>這正是我想做的,你解釋得很好。 但應用該公式後,我沒有得到正確的值。 讓我提供一個新的例子,以確保我們的想法相同。 這是一個非常大且相當動態的數據集。 希望這能更好地解釋問題,不要混淆問題。 謝謝。</P><P> </P><TABLE border="1"><TBODY><TR><TD><STRONG>管子</STRONG></TD><TD><STRONG>罐</STRONG></TD><TD><STRONG>桶</STRONG></TD><TD><STRONG>索格</STRONG></TD><TD><EM><STRONG>每個 JAR X BUCKET X SOG 發生次數管</STRONG></EM></TD><TD><U><EM><STRONG>每個桶發生 Jar 的唯一次數 X SOG 組合</STRONG></EM></U></TD><TD> </TD></TR><TR><TD>澳大利亞證券交易所</TD><TD>阿貝</TD><TD>WDNH</TD><TD>5001</TD><TD><P>3</P></TD><TD><P>2</P></TD><TD> </TD></TR><TR><TD>CDV</TD><TD>阿貝</TD><TD>WDNH</TD><TD>5001</TD><TD>3</TD><TD>2</TD><TD> </TD></TR><TR><TD>韓國國家實驗室</TD><TD>阿貝</TD><TD>WDNH</TD><TD>5001</TD><TD>3</TD><TD>2</TD><TD> </TD></TR><TR><TD>國民醫療服務體系</TD><TD>本</TD><TD>WDNH</TD><TD>5001</TD><TD>2</TD><TD>2</TD><TD> </TD></TR><TR><TD><P>南達科他州</P></TD><TD>本</TD><TD>WDNH</TD><TD>5001</TD><TD>2</TD><TD>2</TD><TD> </TD></TR><TR><TD>MKD</TD><TD><P>貓</P></TD><TD>DEFC</TD><TD>5004</TD><TD>4</TD><TD>1</TD><TD> </TD></TR><TR><TD>凱迪恩</TD><TD>貓</TD><TD>DEFC</TD><TD>5004</TD><TD>4</TD><TD>1</TD><TD> </TD></TR><TR><TD>AMD</TD><TD>貓</TD><TD>DEFC</TD><TD>5004</TD><TD>4</TD><TD>1</TD><TD> </TD></TR><TR><TD>指令管理系統</TD><TD>貓</TD><TD>DEFC</TD><TD>5004</TD><TD>4</TD><TD>1</TD><TD> </TD></TR><TR><TD>MDN</TD><TD>狗</TD><TD>DEFC</TD><TD>5007</TD><TD>2</TD><TD>2</TD><TD> </TD></TR><TR><TD>虛擬網絡功能</TD><TD>狗</TD><TD>DEFC</TD><TD>5007</TD><TD>2</TD><TD>2</TD><TD> </TD></TR><TR><TD>RKE</TD><TD><P>鰻魚</P></TD><TD>DEFC</TD><TD>5007</TD><TD>5</TD><TD>2</TD><TD> </TD></TR><TR><TD>左旋KD</TD><TD>鰻魚</TD><TD>DEFC</TD><TD>5007</TD><TD>5</TD><TD>2</TD><TD> </TD></TR><TR><TD>凱迪曼</TD><TD>鰻魚</TD><TD>DEFC</TD><TD>5007</TD><TD>5</TD><TD>2</TD><TD> </TD></TR><TR><TD>世界LD</TD><TD>鰻魚</TD><TD>DEFC</TD><TD>5007</TD><TD>5</TD><TD>2</TD><TD> </TD></TR><TR><TD>克馬德</TD><TD>鰻魚</TD><TD>DEFC</TD><TD>5007</TD><TD>5</TD><TD>2</TD><TD> </TD></TR><TR><TD>FDL</TD><TD>飛</TD><TD>斯德</TD><TD>5008</TD><TD>6</TD><TD>2</TD><TD> </TD></TR><TR><TD>SMK</TD><TD>飛</TD><TD>斯德</TD><TD>5008</TD><TD>6</TD><TD>2</TD><TD> </TD></TR><TR><TD>克吉姆</TD><TD>飛</TD><TD>斯德</TD><TD>5008</TD><TD>6</TD><TD>2</TD><TD> </TD></TR><TR><TD>酒精性肝病</TD><TD>飛</TD><TD>斯德</TD><TD>5008</TD><TD>6</TD><TD>2</TD><TD> </TD></TR><TR><TD>瀕死體驗</TD><TD>飛</TD><TD>斯德</TD><TD>5008</TD><TD>6</TD><TD>2</TD><TD> </TD></TR><TR><TD>IEJ</TD><TD>飛</TD><TD>斯德</TD><TD>5008</TD><TD>6</TD><TD>2</TD><TD> </TD></TR><TR><TD>DFR</TD><TD>阿貝</TD><TD>斯德</TD><TD>5008</TD><TD>3</TD><TD>2</TD><TD> </TD></TR><TR><TD>特雷</TD><TD>阿貝</TD><TD>斯德</TD><TD>5008</TD><TD>3</TD><TD>2</TD><TD> </TD></TR><TR><TD>非金融實體</TD><TD>阿貝</TD><TD>斯德</TD><TD>5008</TD><TD>3</TD><TD>2</TD><TD> </TD></TR></TBODY></TABLE></LINGO-BODY><LINGO-SUB id="lingo-sub-214145" slang="en-US" mode="NONE">回复:根據多條件匹配計算行數</LINGO-SUB><LINGO-BODY id="lingo-body-214145" slang="en-US" mode="NONE"><P>你好<A href="https://community.jmp.com/t5/user/viewprofilepage/user-id/14945" target="_blank">@Sciguy_1</A> ,</P>
<P> </P>
<P>我相信我明白你在問什麼,但讓我重申一下以確定。 您想要一個新列來計算唯一組合的數量,而不管這些組合出現了多少次? 在您提供的子集中,三列有 3 種獨特的組合,正如您所指出的,其中一種組合出現 4 次,另外 3 次,另外 2 次。 另一種說法是您有多少唯一行,由前三列定義。 如果這確實是您想要的,則可以使用以下列公式,該公式本質上是計算“計數在組中”列中出現 1 的次數,即唯一組的數量:</P>
<P> </P>
<PRE><CODE class=" language-jsl">As Constant(
uniqueRowCount = Summation(
i = 1,
N Row(),
If( :Count In Groups[i] == 1,
1,
0
)
)
);
uniqueRowCount;

我也在這裡附上了新表。 這是您想要做的嗎?
@朱利安
回复:根據多條件匹配計算行數創建一個新列並對新列使用以下公式
summarize(byGroup=by(:Total in Group));
n items(byGroup)
回复:根據多條件匹配計算行數更進一步 - 假設我想添加另一列來顯示子集中出現組合的次數。 因此,在示例中,“組中總數”列中有 4-“4”、3-“3”和 2-“2”。 如果所有行(1 到 9)代表整個子集,則本例中的答案將為 3,因為出現了“4”,出現了“3”,出現了“2”。 因此,在新列“子集中的總計”中,每一行都會有一個 3。 我不知道如何以這種方式匯總數字。
回复:根據多條件匹配計算行數謝謝朱利安,專欄方法完美地解決了我的申請。回复:根據多條件匹配計算行數你好@Sciguy_1
有幾種方法可以解決這個問題。 我認為公式列方法相對簡單,有兩列,第一列遞增地計算匹配的出現次數,然後第二列按組查找該計數的最大值,這就是您在這裡所說的計數。 該表如下所示:
這是列公式:
按用於匹配的列進行分組計數:
Col Cumulative Sum( 1, :Column A, :Column B, :Column C )
以及該計數列的最大值,也按用於匹配的列進行分組
Col Maximum( :Count In Groups, :Column A, :Column B, :Column C )
附表供大家參考。
或者,如果您希望創建一個僅列出一次唯一行及其匹配次數的表,則可以使用“表”>“摘要”。 作為組輸入您的列,然後單擊“確定”。 該設置如下所示:

這將返回一個匯總表,其中顯示這三列中值的唯一組合,以及顯示數據表中出現次數的列。 
獲得此表後,您可以選擇匯總表中的 N 行列,然後將其直接拖動到原始表中,JMP 將為您處理所有匹配,以便使用這些值更新原始表。 看起來是這樣的:
最後,製作表格的腳本也作為源腳本保存到匯總表中:
Data Table( "Example.jmp" ) << Summary(
Group( :Column A, :Column B, :Column C ),
Freq( "None" ), Weight( "None" )
)
我希望這有幫助!
@朱利安