如何解决多个中频条件?

我需要从两列产生输出,

ABC 1 1 TP 1 -1 FN -1 1 FP -1 -1 TN 

我在C1使用了下面的公式。

 =IF(A1=B1,IF(A1=1&B1=1,"TP","TN"),IF(A1=-1&B1=1,"FP","FN")) 

而输出就像是,

  ABC 1 1 TN 1 -1 FN -1 1 FN -1 -1 TN 

我无法弄清楚上面的方程有什么问题。
任何帮助将不胜感激。

问题是SCB所说的,就是有两个'AND'ed条件,你需要使用AND()函数,否则你会得到& concatenator,例如你的第一个公式就变成了:

 =IF(1=1,IF(1=1&1=1,"TP","TN"),IF(A1=-1&B1=1,"FP","FN")) 

哪个变成…

 =IF(TRUE,IF(1="11"=1,"TP","TN"),IF(A1=-1&B1=1,"FP","FN")) 

然后…

 =IF(TRUE,IF(FALSE=1,"TP","TN"),IF(A1=-1&B1=1,"FP","FN")) 

然后…

 =IF(TRUE,IF(FALSE,"TP","TN"),IF(A1=-1&B1=1,"FP","FN")) 

您应该将其更改为:

 =IF(A1=B1,IF(AND(A1=1,B1=1)"TP","TN"),IF(AND(A1=-1,B1=1),"FP","FN")) 

或更短…

 =IF(A1=B1,IF(A1=1,"TP","TN"),IF(A1=-1,"FP","FN")) 

虽然我认为一个有趣的方式来做同样的事情将是:

 =IF(A1=B1,"T","F")&IF(B1=1,"P","N") 

因为“like”总是给T ,如果B1是正数,那么总是“P”,然后连接两个结果。

代替

 A1=1&B1=1 

尝试

 AND(A1=1,B1=1) 

尽pipe即便如此,由于您已经确认A和B是否相同,您只需在次要IF语句中检查其中一个值即可。

 =IF(A1=B1,IF(A1=1,"TP","TN"),IF(A1=-1,"FP","FN"))