如何在Google表格中将数字范围分组为数字范围类别

时间:2019-02-13 04:50:37

标签: google-sheets

我有一列体重指数(BMI)范围,我想在另一列中自动将其分组为类别或存储桶。看起来像这样:

colA    colB

BMI     BMI Grouping
23.11   BMI ≥ 18.5 - 24.9
22.66   BMI ≥ 18.5 - 24.9
33.55   BMI ≥ 30 - 34.9
40.12   BMI ≥ 35

我有5个“ BMI分组”类别,我想将BMI的范围归类为:

  • BMI≥18.5-24.9
  • BMI≥25-29.9
  • BMI≥30-34.9
  • BMI≥35
  • 体重指数<18.5

请教我Google表格所需的公式或代码。

6 个答案:

答案 0 :(得分:0)

您可以使用嵌套IF语句(并向下拖动),例如:

=IF(AND(A2>0,     A2<18.5), "BMI < 18.5",
 IF(AND(A2>=18.5, A2<25),   "BMI ≥ 18.5 - 24.9",
 IF(AND(A2>=25,   A2<30),   "BMI ≥ 25 - 29.9",
 IF(AND(A2>=30,   A2<35),   "BMI ≥ 30 - 34.9",
 IF(    A2>=35,             "BMI ≥ 35", )))))

答案 1 :(得分:0)

您可以将IFSARRAYFORMULA组合使用,例如:

=IFERROR(ARRAYFORMULA(
 IFS(A2:A>=35,   "BMI ≥ 35",
     A2:A>=30,   "BMI ≥ 30 - 34.9",
     A2:A>=25,   "BMI ≥ 25 - 29.9", 
     A2:A>=18.5, "BMI ≥ 18.5 - 24.9",
     A2:A>=1,    "BMI < 18.5")), )

答案 2 :(得分:0)

您可以将ARRAYFORMULA与虚拟VLOOKUP一起使用,例如:

=IFERROR(ARRAYFORMULA(VLOOKUP(A2:A, {{1,    "BMI < 18.5"       };
                                     {18.5, "BMI ≥ 18.5 - 24.9"};
                                     {25,   "BMI ≥ 25 - 29.9"  };
                                     {30,   "BMI ≥ 30 - 34.9"  };
                                     {35,   "BMI ≥ 35"         }}, 2)), )

答案 3 :(得分:0)

您还可以将IF逻辑与ARRAYFORMULA一起使用,例如:

=ARRAYFORMULA(IFERROR(IF(LEN(A2:A), 
 IF((A2:A>0)     * (A2:A<18.5), "BMI < 18.5",
 IF((A2:A>=18.5) * (A2:A<25),   "BMI ≥ 18.5 - 24.9",
 IF((A2:A>=25)   * (A2:A<30),   "BMI ≥ 25 - 29.9",
 IF((A2:A>=30)   * (A2:A<35),   "BMI ≥ 30 - 34.9",
 IF((A2:A>=35)   * (A2:A<1000), "BMI ≥ 35", ))))), ), ))

enter image description here

答案 4 :(得分:0)

,您也可以将CHOOSEMATCHARRAYFORMULA一起使用,例如:

=ARRAYFORMULA(IFERROR(CHOOSE(MATCH(A2:A, 
 {0.1, 18.5, 25, 30, 35, 9999}), "BMI < 18.5", 
                                 "BMI ≥ 18.5 - 24.9", 
                                 "BMI ≥ 25 - 29.9", 
                                 "BMI ≥ 30 - 34.9", 
                                 "BMI ≥ 35"), ))

答案 5 :(得分:-1)

请尝试:

newname