example.groupByKey().mapValues(list)
spark 按照key 分组 然后统计每个key对应的最大、最小、平均值思路——使用groupby,或者reduceby
What you're getting back is an object which allows you to iterate over the results. You can turn the results of groupByKey into a list by calling list() on the values, e.g. example = sc.parallelize([(0, u'D'), (0, u'D'), (1, u'E'), (2, u'F')]) example.groupByKey().collect() # Gives [(0, <pyspark.resultiterable.ResultIterable object ......] example.groupByKey().map(lambda x : (x[0], list(x[1]))).collect() # Gives [(0, [u'D', u'D']), (1, [u'E']), (2, [u'F'])]
# OR:
Hey Ron, It was pretty much exactly as Sean had depicted. I just needed to provide count an anonymous function to tell it which elements to count. Since I wanted to count them all, the function is simply "true". val grouped = rdd.groupByKey().mapValues { mcs => val values = mcs.map(_.foo.toDouble) val n = values.count(x => true) val sum = values.sum val sumSquares = values.map(x => x * x).sum val stddev = math.sqrt(n * sumSquares - sum * sum) / n print("stddev: " + stddev) stddev } I hope that helps
Just don't. Use reduce by key: lines.map(lambda x: (x[1][0:4], (x[0], float(x[3])))).map(lambda x: (x, x)) \ .reduceByKey(lambda x, y: ( min(x[0], y[0], key=lambda x: x[1]), max(x[1], y[1], , key=lambda x: x[1])))
本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/7156188.html,如需转载请自行联系原作者

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Hive Hue的导出XLS格式,数据不全
在使用Hive Hue查询出结果之后,点击按钮【以XLS格式下载结果】导出的数据文件不完整。 下图是按照XLS和CVS格式导出的文件大小比较的图片,明显按照cvs格式导出的文件数据比xls格式的数据多 无奈,暂时只能导出csv,然后另存为成xls格式。 本文转自巧克力黒 51CTO博客,原文链接:http://blog.51cto.com/10120275/1665049,如需转载请自行联系原作者
- 下一篇
Ubuntu 16.04下部署Graylog日志服务器
Graylog 是一个开源的日志管理系统,集中式收集、索引、分析其它服务器发来的日志。它是由 Java 语言编写的,能够接收 TCP、UDP、AMQP 协议发送的日志信息,并且使用 Mongodb 做为后台数据库。它还有一个使用 Ruby 编写的 Web 管理接口,可以轻松管理 Graylog 和查询日志。 Graylog 可以收集监控多种不同应用的日志。本文只是会为了示范说明,会把用到的组件全部安装到一个单独的服务器上。对于大型、生产系统你可以把组件分开安装在不同的服务器上,这样可以提高效率。 Graylog 2 的组件 Graylog 2 有 4 个基本组件: Graylog Server:这个服务负责接收和处理日志/消息,并且和其他组件沟通。 Elasticsearch:存储所有的日志,它的性能依赖内存和硬盘IO。 MongoDB:存储数据。 Web接口:用户接口。 下面是 Graylog 2 各组件之间的关系图 安装和配置 Graylog 2 环境依赖 Graylog 2 需要以下环境依赖: 一台 Ubuntu 16.04 服务器,至少有 2 GB 的 RAM。 Elastic...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 设置Eclipse缩进为4个空格,增强代码规范
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS6,CentOS7官方镜像安装Oracle11G
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS6,7,8上安装Nginx,支持https2.0的开启