上一篇中咱们介绍了使用Excel和Python计算统计值,这次咱们使用Hive来计算统计值。
先来回顾一下数据和对应的统计结果:
这里咱们使用的是iris分类数据集,数据下载地址为:
http://archive.ics.uci.edu/ml/datasets/Iris
下载后转换为xlsx格式的文件,数据如下:
对应的统计结果如下:
接下来先进入实战部分,最后再总结下本地Hive使用过程中的一些坑。
1、使用Hive计算统计值
1.1 最大值、最小值
使用Hive统计最大值直接使用max和min函数就可以:
select max(feature1) as max_feature1, max(feature2) as max_feature2, max(feature3) as max_feature3, max(feature4) as max_feature4from iris;
结果输出如下:
select min(feature1) as min_feature1, min(feature2) as min_feature2, min(feature3) as min_feature3, min(feature4) as min_feature4from iris;
结果输出如下:
咦,这里很奇怪的一点是,怎么不显示列名呢?这里如果想显示列名的话,需要进行设置:
set hive.cli.print.header=true;
此时再执行上面的SQL,就可以啦:
1.2 平均值
平均值的计算使用avg函数:
select avg(feature1) as avg_feature1, avg(feature2) as avg_feature2, avg(feature3) as avg_feature3, avg(feature4) as avg_feature