重复行表中唯一特征的计数



我的表有基于重复ID列列出的重复行。重复行可以具有一个或多个具有唯一值的Characteristic列。我正在尝试计算重复行中哪些Characteristic列具有唯一值。

之前:

+-----+----------+-------------+-----------+------------+
| ID  | charType | charFlavour | charColor | charWeight |
+-----+----------+-------------+-----------+------------+
| 123 | gel      | mint        | blue      | 10gms      |
| 123 | liquid   | mint        | blue      | 10gms      |
| 123 | solid    | mint        | blue      | 10gms      |
| 456 | wood     | orange      | red       | 20gms      |
| 456 | wood     | vanilla     | red       | 20gms      |
| 456 | wood     | raspberry   | red       | 20gms      |
| 456 | wood     | strawberry  | red       | 20gms      |
| 789 | metal    | mango       | yellow    | 25gms      |
| 789 | metal    | mango       | yellow    | 30gms      |
| 789 | metal    | mango       | yellow    | 22gms      |
| 333 | silica   | NA          | magenta   | 11gms      |
| 333 | plastic  | NA          | white     | 11gms      |
| 333 | rubber   | NA          | teal      | 11gms      |
+-----+----------+-------------+-----------+------------+

之后:

+-------------+-----+-----+-----+-----+-------+
|     ID      | 123 | 456 | 789 | 333 | Total |
+-------------+-----+-----+-----+-----+-------+
| charType    |   1 |   0 |   0 |   1 |     2 |
| charFlavour |   0 |   1 |   0 |   0 |     1 |
| charColor   |   0 |   0 |   0 |   1 |     1 |
| charWeight  |   0 |   0 |   1 |   0 |     1 |
+-------------+-----+-----+-----+-----+-------+

使用Pivot表或Google Query可以使用这种格式吗?

也许这不是您想要的最优雅的解决方案——谷歌查询语言中似乎没有函数返回列的所有唯一值。但是,对于每个属性,这个解决方案应该成功地计算出有多少ID对应于该属性的多个值。例如,它将计算多个charFlavour对应的ID数量。以下是要进行的两个步骤/查询:

  1. =QUERY(A1:E, "select A, max(B), min(B), max(C), min(C), max(D), min(D), max(E), min(E) group by A", 1):这将按字母顺序/数字选择每个属性相对于每个ID的最大值和最小值。它将为每个ID返回一行,包含最小和最大属性值。

  2. 对于每个属性,使用类似=QUERY(G1:O, "select count(G) where H != I", 1)的内容。如果您有四个属性,则需要其中四个调用;只需将CCD_ 4更改为每个属性对应的两列即可。这些QUERY调用中的每一个都将生成一个只有一个值的表,该表中的ID数对于某个属性具有多个值。

相关内容

  • 没有找到相关文章

最新更新