在 Excel 上计算一个单元格中的多个字母

Counting multiple letters in one cell on Excel

我正在对细菌基因进行分析,我有一个电子表格,其中 A 列是基因名称,B 列具有我们所说的基因 COG 类别,其中取决于基因的功能(例如碳水化合物代谢、细胞运动等)它被分配了一个字母代码(A,B,C ......一直到字母 S)。

我想制作一个饼图来显示这些字母的比例分布是多少——我有多少个 As Bs Cs 等。然而,我有一个问题,因为一些基因属于多个组,因此在细胞中有多个字母。有没有一种方法可以让 Excel 计算有多少个字母,并且每个字母在包含多个字母的单元格中单独计算? (例如,如果一个电池有 AEI,那么它会算作 1 A、1E 和 1I 吗?)

您可以通过测量删除目标字符前后字符串的 LEN长度)来计算字符的实例数。 LEN 的区别只是您的角色出现的次数。

这是一个示例,说明如何将其与下面共享的格式一起使用。在单元格 B2 中输入公式并根据需要向下拖动

B2 = LEN($A2)-LEN(SUBSTITUTE($A2,B,""))

要计算字符串中存在多少个唯一字母,您只需计算上述公式的输出,使用 H2[ 中的以下公式查找具有 1 个或更多(即 <> 0)的字母计数=17=]

H2 = COUNTIF(B2:G2,"<>"&0)

您写道要创建饼图。
这意味着您需要创建一个包含字母及其各自频率的二维数组。

一种方法,如果您有 Office 365:

原始数据

  • 创建两列table
    • 包含字母表中所有字母的一列
    • 一列包含所有这些字母的数量

计数公式:

E2: =LEN(CONCAT(COG))-LEN(SUBSTITUTE(CONCAT(COG),D2,""))

向下填充E27

  • 创建过滤table,过滤掉Count = 0

    的行
      G2: =FILTER($D:$E,$E:$E<>0)
    

创建饼图: