所以我有一堆原始数据,基本上分为三类(忽略三个约束,我们就说 n 个类别)。我想将其拆分成多个列,每列都是一个类别。示例:
数据:
Type Value
1 5
3 6
1 2
2 8
2 4
3 5
2 3
电子表格中新位置所需的输出:
1 2 3
-----------------
5 8 6
2 4 5
3
我看过数据透视表,但并不完全明白如何使用它来实现它。因此,我希望得到帮助,无论是理解数据透视表方法还是其他方法。
我查看了其他帖子,找不到完全符合此要求的内容,因此请不要标记重复。另外,我想避免使用 VBA,因为这是统计项目的一部分。
答案1
要使用数据透视表执行此操作,您需要一个辅助列,这样数据就不会汇总到一行中。在屏幕截图中,我使用以下公式来确定该行的类型已显示多少次。
=COUNTIF($A$1:INDEX(A:A,ROW()),[@Type])
然后,此列可用于数据透视表的“行”区域。类型进入列区域,值进入值区域。如果 E 列会破坏您的工作表设计,请删除所有总计并隐藏它。
如果您的 Excel 版本具有新的动态数组函数,您可以使用 Filter 函数。在下面的屏幕截图中,类型值 1、2 和 3 被手动输入到单元格 E2 至 G2 中。然后此公式进入 E3 并复制到右侧:
=FILTER($B:$B,$A:$A=E$2)
动态数组可供 Office 365 内部人员使用,并有望很快向所有 Office 365 用户开放。