写点什么

Spark 1.4 为 DataFrame 新增的统计与数学函数

  • 2015-06-08
  • 本文字数:1333 字

    阅读完需:约 4 分钟

目前,Spark 1.4 版本在社区已经进入投票阶段,在 Github 上也提供了 1.4 的分支版本。最近,Databricks 的工程师撰写了博客,介绍了 Spark 1.4 为 DataFrame 新增的统计与数学函数。这篇博客介绍的函数主要包括:

  1. 随机数据生成(Random Data Generation)
  2. 概要与描述性统计(Summary and descriptive statistics)
  3. 协方差与相关性(Sample covariance and correlation)
  4. 交叉列表(Cross tabulation)
  5. 频率项(Frequent items)
  6. 数学函数(Mathematical functions)

随机数据生成(Random Data Generation)主要是为测试数据提供方便快捷的接口,如 range、rand 和 randn。rand 函数提供均匀正态分布,而 randn 则提供标准正态分布。在调用这些函数时,还可以指定列的别名,以方便我们对这些数据进行测试。

概要与描述性统计(Summary and Descriptive Statistics)包含了计数、平均值、标准差、最大值、最小值运算。只需要针对 DataFrame 调用 describe 函数即可:

复制代码
from pyspark.sql.functions import rand, randn
df = sqlContext.range(0, 10).withColumn('uniform', rand(seed=10)).withColumn('normal', randn(seed=27))
df.describe().show()
```可能的结果显示为:
summary id uniform normal count 10 10 10 mean 4.5 0.5215336029384192 -0.01309370117407197 stddev 2.8722813232690143 0.229328162820653 0.5756058014772729| min 0 0.19657711634539565 -0.7195024130068081 max 9 0.9970412477032209 1.0900096472044518 交叉列表为一组变量提供了频率分布表,在统计学中被经常用到。例如在对租车行业的数据进行分析时,需要分析每个客户(name)租用不同品牌车辆 (brand) 的次数。此时,就可以直接调用 crosstab 函数。例如:
`df.stat.crosstab("name", "brand").show()`但是需要注意的是,必须确保要进行交叉列表统计的列的基数不能太大。
为 DataFrame 新增加的数学函数都是我们在做数据分析中常常用到的,包括 cos、sin、floor、ceil 以及 pow、hypot 等。以上新特性都会在 Spark 1.4 版本中得到支持,并且支持 Python、Scala 和 Java。在未来发布的版本中,DataBricks 还将继续增强统计功能,并使得 DataFrame 可以更好地与 Spark 机器学习库 MLlib 集成,例如 Spearman Correlation(斯皮尔曼相关)、针对协方差运算与相关性运算的聚合函数等。
若希望了解这些新增特性的具体内容,可以持续关注 [DataBricks 的开发者博客](http://databricks.com/blog/category/developer)。
- - - - - -
感谢 [丁晓昀](http://www.infoq.com/cn/author/%E4%B8%81%E6%99%93%E6%98%80) 对本文的审校。
给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 [editors@cn.infoq.com](mailto:editors@cn.infoq.com)。也欢迎大家通过新浪微博([@InfoQ](http://www.weibo.com/infoqchina),[@丁晓昀](http://weibo.com/u/1451714913)),微信(微信号:[InfoQChina](http://weixin.sogou.com/gzh?openid=oIWsFt0HnZ93MfLi3pW2ggVJFRxY))关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群 [![](https://static001.infoq.cn/resource/image/06/9f/06e1fec4a87eca3142d54d09844c629f.png)](http://shang.qq.com/wpa/qunwpa?idkey=cc82a73d7522f0090aa3cbb6a8f4bdafa8b82177f481014c976a8740d927997a))。
2015-06-08 04:466778
用户头像

发布了 109 篇内容, 共 41.7 次阅读, 收获喜欢 14 次。

关注

评论

发布
暂无评论
发现更多内容

微软智能办公软件 Microsoft To-Do

理理

VJ音视频软件 Resolume Arena 7 含激活补丁

理理

算力挖矿系统开发技术服务搭建

V\TG【ch3nguang】

Rust 编程语言集成开发环境(IDE)RustRover 2024 for mac

Mac相关知识分享

Mac软件

VMware ESXi 7.0U3q macOS Unlocker 标准版和厂商定制版更新 OEM BIOS 2.7 支持 Windows Server 2025

sysin

macos esxi 2025 OEM BIOS

Auto Mouse Click 高效稳定的鼠标连点器软件

理理

IAM的“账号委托”:给权限不给账号,这是什么神操作?

芯盾时代

权限管理 iam 统一身份管理平台

JetBrains DataSpell for macPython 语言的集成开发环境(IDE)

Mac相关知识分享

Mac软件 集成开发 软件下载

数造科技荣登“科创杯”领奖台,开启数据驱动新篇章!

数造万象

基础设施 数据治理 科技 科创中国 大数据、

秒合约期权交易系统开发部署搭建设计

V\TG【ch3nguang】

秒合约系统开发

鸿蒙跨端实践-ArkTS和CAPI的混合开发实现

京东科技开发者

专为 Rust 编程语言打造的集成开发环境 (IDE):RustRover 2024

理理

直播GMV破千万,朱时茂在百度优选开启直播主场

Geek_2d6073

RAG效果优化:高质量文档解析详解

阿里云大数据AI技术

人工智能 智能搜索 rag 文档解析 智能开放搜索

Microsoft 365:全能办公套件,激发无限创造力,提升团队协作新高度

理理

苹果思维导图 iMap Builder for Mac v11.1.15激活版

理理

效率跃升16倍!火山引擎ByteHouse助力销售数据平台复杂查询效率大幅提高

字节跳动数据平台

数据库 大数据 Clickhouse 云数仓

写 TDengine,赢 AirPods!

TDengine

开源 AI 技术 征文 数据库·

VMware ESXi 6.7U3u macOS Unlocker 标准版和厂商定制版更新 OEM BIOS 2.7 支持 Windows Server 2025

sysin

esxi 2025 OEM BIOS unlocker

Photoshop2024最新版下载安装

理理

推荐一个免费通配符证书平台:SRE运维的选择

外滩运维专家

证书监控 免费SSL证书 免费通配符 免费证书 免费https

Macs Fan Control Pro 精准调控Mac电脑风扇转速、有效降温

理理

Tampermonkey For Mac油猴Safari浏览器插件

Mac相关知识分享

浏览器插件

CAD2025下载 Autodesk AutoCAD 2025完美解锁版 win&mac

理理

AnyGo for Mac中文破解版:GPS位置模拟

理理

使用JavaScript读取手机联系人列表

南城FE

JavaScript 前端

lg-soar:助力开发者腾飞的利器

六哥是全栈

ts Vue 3 脚手架 #java #开源

Mac动态壁纸Dynamic Wallpaper for Mac

Mac相关知识分享

动态壁纸 mac壁纸

专业视频编辑软件Final Cut Pro for Mac

Mac相关知识分享

fcpx

【Tomcat源码分析】生命周期机制 Lifecycle

派大星

tomcat源码解读

Axure RP 9 for Mac完美破解版 Axure RP 9永久授权码

理理

Spark 1.4为DataFrame新增的统计与数学函数_语言 & 开发_张逸_InfoQ精选文章