使用唯一ID计算每行的值

时间:2017-07-14 20:51:04

标签: excel

我在表格中有很多行。每行反映患者的事件。然而,一名患者可能经历过多次事件,因此可能存在具有相同患者编号的多行。现在,我想计算数据库中男性患者的数量,而不计算多次发生多次事件的患者。每位患者都由唯一可用于此的患者ID识别。

如果不是因为我使用的表也有多个过滤器,那么这不应该是那么复杂,所以我需要使用SUBTOTAL来进行任何计数功能。

我真的不知道从哪里开始,所以我无法提供任何代码...... 任何可以指向正确方向的功能都将非常感激。

感谢您的帮助。

〜Laurens的

3 个答案:

答案 0 :(得分:0)

要获取同一列中唯一ID的数量,如果ID是数字,则可以SUM使用FREQUENCY

=SUM(IF(FREQUENCY($A$1:$A$1000,$A$1:$A$1000)>0,1))

如果文字和数字混合在一起,您可以使用以下内容获取唯一ID:

=SUM(IF(FREQUENCY(MATCH($A$1:$A$1000,$A$1:$A$1000,0),MATCH($A$1:$A$1000,$A$1:$A$1000,0))>0,1))

(来自here

答案 1 :(得分:0)

使用数据透视表过滤和统计所有患者数据库。选择您的数据,然后选择插入 - >表格 - >数据透视表。将过滤器放在表格的“过滤器”部分,将“患者ID”放在“行”部分。然后,您可以使用COUNT来获取患者数量。 有关数据透视表的详细信息,请查看:https://support.office.com/en-us/article/Create-a-PivotTable-to-analyze-worksheet-data-a9a84538-bfe9-40a9-a8e9-f99134456576

答案 2 :(得分:0)

Here you go Formulas

您没有提到某个事件是否是可选的。 您可能希望添加额外的列H,其公式如h2 = if(c2 =“”,0,1)和1/0,并将其与G相乘。
基本上,如果列G包含1,则包含它

这是公式的结果: Results from formulae

修订

表格按患者ID排序..

更改患者身份栏H包含1,否则为0。

因此H2被硬编码为1,H3,H4,H6将评估为1。

所以现在G2 = H2 * E2等你可以按列H过滤。 将事物映射到二进制0和1的美妙之处在于,您可以进行乘法以实现逻辑AND结果,同时将复杂任务分解为一系列步骤。然后,您可以对数据应用过滤器以获取列G不为零的行,并查看总计数。通常我会在第2行的标题和数据之间插入一列,然后G2 = SUM(G3:G9) 总和列H为患者数量。 enter image description here