在 Google 表格中,如何分隔逗号分隔值?

In Google Sheets, how do I separate comma separated values?

我有一列逗号分隔值,如下所示:

              A
1   A, B, C, D, E
2   A, D, E, F, G
3   B, E, F, H
4   A, B, C, D, E, F, G, H
5   D
6   F, G
7   A, E, F, G
[...]

我想获取所有这些值,但要单独获取,所以我最终会得到一个 list/array,其值类似于 ["A"、"B"、"C" ,"D","E","A","D","E","F","G","B","E"…],我可以传递给嵌套在函数中的 ARRAYFORMULA()

布朗尼积分:
我最终需要将它传递给 =MODE()。如果没有 =MODE(ARRAYFORMULA(SEPERATE(A1:A7))), SEPERATE 是上面定义的假设函数,如果有 easier/actually 可能的方法来做到这一点,那么请给我一个。谢谢!

您不能将 split 与数组公式一起使用,但您可以 运行 在您的值右侧的辅助列中使用 split 函数:

=SPLIT(A1,",")

此外,模式不适用于文本值 - 仅适用于数字 - 您可能想改用 countif。

要获得总计 table,请使用此公式:

=QUERY({TRANSPOSE(SPLIT(JOIN(", ",A1:A7),", ")),TRANSPOSE(SPLIT(JOIN(", ",A1:A7),", "))},"select Col1, count(Col2) group by Col1 order by count(Col2) desc label count(Col2) ''",0)

它会给出这样的结果:

E   5
F   5
A   4
D   4
G   4
B   3
C   2
H   2

如果你想得到字母"E"(模式),使用:

=QUERY(QUERY({TRANSPOSE(SPLIT(JOIN(", ",A1:A7),", ")),TRANSPOSE(SPLIT(JOIN(", ",A1:A7),", "))},"select Col1, count(Col2) group by Col1 order by count(Col2) desc label count(Col2) ''",0),"select Col1 limit 1")

要获取众数,请将第一个公式放在 B 列中。它会在每组字母的末尾添加一个逗号,以便进行拆分。然后第二个公式将找到众数。您可以隐藏 B 列。

=transpose(split(join(" ",arrayformula(A1:A7&",")),", "))
=ArrayFormula(
   index(B1:B,
     match(
       max(if(B1:B="",iferror(1/0),countif(B1:B,B1:B))),
       countif(B1:B,B1:B),
       0
     )
   )
 )