excel pivot table - 计算列中certan值的外观

时间:2017-01-02 13:33:18

标签: excel pivot-table

假设我的excel数据透视表有以下数据:

country_id user_id answer ---------- ------- ------ 1 1 Y 1 2 Y 2 3 N 2 4 Y 3 5 N

我想知道每个国家有多少“Y”。 如果我将值中的“回答”作为“回答计数”,我每行得1。我怎么才能算出“Y”的答案?

所以结果将是:

country_id answerY ----------- ------- 1 2 2 1 3 0

BR 是的

2 个答案:

答案 0 :(得分:1)

我不确定您是否可以在数据透视表中执行此操作,但如果您希望在数据透视表之外执行此操作,则可以使用这些公式创建几列:

Column D:
=IF(C2="Y",1,0)*A2

Column E:
=COUNTIF(D$2:D$6,B2)

这假设所有用户ID都是唯一且顺序的,并且D $ 6需要替换为列中最后一个值。 E列将具有您描述为answerY的值。

答案 1 :(得分:1)

我有一个类似于@pkg的解决方案。在数据中再添加一列,并使用以下公式将其命名为“answerY”:

=IF(C4="Y",1,0)

或者,如果您的数据在表格中:

=IF([@answer]="Y",1,0)

现在,按如下方式设置数据透视表:

Row lables:  country
Values: answerY (sum)

通常我会说在数据透视表中添加一个计算字段,但是计算字段的工作方式是聚合值,我想不出用直接数据透视表做这个的方法。

如果您有能力使用PowerPivot,您可以创建一个自定义列或Dax表达式来处理它。