我有一列名称,而一列名为is break rules。
- 如果此人至少违反了一次规则,并且至少遵守了一次该规则=
partial
- 如果一个人总是违反规则=
rule breaker
- 如果一个人一直遵循规则=
rule follower
我知道如何在python或其他软件中以编程方式实现这一点,但我如何在excel中检查它们的实际规则破坏状态?
name | 违反规则 |
---|---|
波波头 | no |
鲍勃 | no |
简 | no |
sam | 是 |
jane | 是 |
jake | 没有 |
bob | 是 |
您的定义意味着您可以为每个人计算Times rule followed / Total times attempted
。如果这个数字是0
,那么这个人就是rule breaker
。如果是1
,那么这个人就是一个遵守规则的人。否则,它们就是partial
。
因此,给定您的布局(并假设数据具有标题行(,我们可以将C2
写为:
=COUNTIFS($A:$A, $A2, $B:B, "yes") / COUNTIF($A:$A, $A2)
$A:$A
是名称的范围,$B$:$B
是布尔值的范围。然后可以将D2
写为:
=IF(C2=1, "rule breaker", IF(C2=0, "rule follower", "partial"))
基于@ccrvd公式,在C2
:中输入该公式
= LOOKUP( INT( 10 * COUNTIFS($A:$A, $A2, $B:$B, "yes") / COUNTIF($A:$A, $A2) ),
{0,"rule follower";1,"partial";10,"rule breaker"} )
事实上,这个也有效:
= LOOKUP( COUNTIFS($A:$A, $A2, $B:$B, "yes") / COUNTIF($A:$A, $A2),
{0,"rule follower";0.01,"partial";1,"rule breaker"} )