通过计算非数字数据在Google表格中旋转图表?

时间:2016-06-11 04:39:38

标签: charts google-sheets

我有一个数据集,我想以图表的形式进行总结。大约有30个类别,我希望在大约300多个回复的条形图中显示这些类别。我认为数据透视表可能是最好的方法,但是当我创建数据透视表并选择多个列时,添加的每个新列都会作为前一列的子集输入。我的数据类似于以下

ID    Country    Age    thingA    thingB    thingC    thingD    thingE    thingF
1      US        5-9                thB                 thD                thF
2      FI        5-9     thA                                               thF
3      GA        5-9     thA                                               thF                         
4      US        10-14                       thC
5      US        10-14              thB                                    thF                         
6      US        15-18                     
7      BR        5-9     thA                                                                                             
8      US        15-18                                  thD                thF                      
9      FI        10-14   thA 

所以,我希望能够创建一个交互式图表,显示"事物"项目;我希望能够根据人口统计数据(例如,国家/地区,年龄)进行过滤。请注意,数据是非数字的,因此我必须使用CountA来查看每个类别中的数量。

是否有一种简单的方法来显示汇总计数的图表数据,并允许我根据不同的标准进行过滤?

2 个答案:

答案 0 :(得分:0)

query可以按您想要的格式汇总数据。事实上你有" th"," thB"等等,而不是" 1"使问题复杂化,但可以动态地将字符串转换为数字数据。

假设您显示的数据位于单元格A1:I10中,则以下公式将对其进行汇总:

=query({B2:C10, arrayformula(if(len(D2:I10), 1, 0))}, "select Col1, Col2, count(Col3), sum(Col3), sum(Col4), sum(Col5), sum(Col6), sum(Col7) group by Col1, Col2", 0)

说明:

  • {B2:C10, arrayformula(if(len(D2:I10), 1, 0))}创建一个表格,其中前两列是您的B,C(国家/地区,年龄),其他六列是1或0,具体取决于D-I中的单元格是否填充。
  • select Col1, Col2, count(Col3), sum(Col3), ... group by Col1, Col2选择国家/地区,年龄,此国家/地区年龄组合的行总数,此国家/地区年龄组合的具有thingA的行数等。
  • 最后一个参数0表示传递给查询的表中没有标题行。

可以使用label为查询返回的列添加标签:请参阅query language documentation。这就像是

label Col1 'Country', Col2 'Age', count(Col3) 'Total count', sum(Col3) 'thingA count', ... 

答案 1 :(得分:0)

在您的数据中添加一个计数列,无论出现什么情况,均用“ 1”表示,这可能会解决数据透视表中的问题。我只是在寻找解决方案并对此进行了思考。现在为我工作。