我在google电子表格中有大量的测试评估结果数组,如下所示:
Question # | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | etc...to Q25
Q Category | Cat 1| Cat 3| Cat5| Cat 1| Cat3| Cat 1| Cat 5| Cat 5| Cat 4|
| Student 1 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 1 |
| Student 3 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 1 |
| Student 4 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 |
| Student 5 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 1 |
| Student 6 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 1 |
...
| Student 207 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 1 |
我想合并行,以便得到以下结果(每个学生的问题类别的总分):
*输出无需问题#
Q Category | Cat 1| Cat 3| Cat 4| Cat5|
| Student 1 | 3 | 1 | 1 | 1 |
| Student 3 | 3 | 0 | 1 | 2 |
| Student 4 | 0 | 2 | 0 | 1 |
| Student 5 | 3 | 0 | 1 | 1 |
| Student 6 | 2 | 1 | 1 | 1 |
...
| Student 207 | 3 | 1 | 1 | 1 |
无法看到使用初始数组创建适当数据透视表的方法,我试图转置初始数组以将学生名称作为列标题:
Q |Category|Student 1|Student 3|Student 4|Student 5|Student 6|... |Student 207|
1 | cat 1 | 1 | 1 | 0 | 1 | 0 | | 1 |
2 | cat 3 | 0 | 0 | 1 | 0 | 0 | | 0 |
3 | cat 5 | 0 | 1 | 0 | 0 | 1 | | 0 |
4 | cat 1 | 1 | 1 | 0 | 1 | 1 | | 1 |
5 | cat 3 | 1 | 0 | 1 | 0 | 1 | | 1 |
6 | cat 1 | 1 | 1 | 0 | 1 | 0 | | 1 |
7 | cat 5 | 0 | 0 | 0 | 0 | 1 | | 0 |
8 | cat 5 | 1 | 1 | 1 | 1 | 1 | | 1 |
9 | cat 4 | 1 | 1 | 0 | 1 | 1 | | 1 |
...
25|...
并使用了一个数据透视表,但是为了获得适当的结果,我必须将学生姓名列标题(其中207个)单独添加(总结为sum)到数据透视表的值类别,这太费时了。不确定是否有办法指示数据透视表以自动将所有学生添加到“值”类别。
我正在寻找一个理想的简单解决方案。如果可以使用数据透视表和函数的某种组合,那就太好了。如果需要编写脚本,我需要创意。我是一个脚本新手。
谢谢!
答案 0 :(得分:0)
假设问题类别在“数据点”中!B2:Z2,得分在“数据点”中!B3:Z209,在合并表中,类别列在B1:E1中(这可以通过在B1中输入=TRANSPOSE(SORT(UNIQUE(TRANSPOSE('Data Points'!B2:Z2))))
,然后在合并表的B2中输入:
=ArrayFormula(MMULT('Data Points'!B3:Z209;TRANSPOSE('Data Points'!B2:Z2)=B1:E1))