云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

文件存储_新概念英语视频百度云_限量秒杀

小七 141 0

考拉1.0简介

无尾熊于去年首次引入,旨在为使用pandas的数据科学家提供一种在Apache SparkTM上运行而无需大幅修改其代码的方法来扩展其现有的大数据工作负载。今天在Spark+AI峰会上,我们宣布了考拉1.0的发布。现在它实现了最常用的熊猫API,覆盖了所有熊猫API的80%。此外,考拉还支持apachespark 3.0、python3.8、Spark访问器、新类型提示和更好的就地操作。这篇博客文章涵盖了这个1.0版本的显著的新特性、正在进行的开发以及当前的状态。如果你是考拉新手,想了解更多关于如何使用它,请阅读发布博客,考拉:从熊猫轻松过渡到apachespark快速增长和发展开源考拉项目已经有了长足的发展。启动时,熊猫API在考拉的覆盖率约为10%-20%。随着社区的大量开发和频繁发布,熊猫API的覆盖率迅速提高,目前在考拉1.0中已接近80%。此外,自最初发布以来,考拉用户数量迅速增加,占PySpark下载量的五分之一,大致表明20%的PySpark用户使用考拉。 更好的熊猫API覆盖率考拉实现了pandas中几乎所有被广泛使用的api和特性,比如绘图、分组、窗口、I/O和转换。此外,像transform_batch和apply_batch这样的考拉api可以直接利用pandas api,使得几乎所有的pandas工作负载都可以转换成考拉的工作负载,而Koalas 1.0.0中的更改最小。apachespark 3.0、python3.8和pandas 1.0考拉1.0.0支持Apache Spark 3.0。考拉用户将能够切换他们的火花版本几乎零变化。apachespark在spark3.0中有超过3400个修复,考拉在许多组件中共享这些修复。请参阅介绍apachespark3.0的博客。在apachespark3.0中,考拉支持最新的python3.8版本,该版本有许多显著的改进,可以在python3.8.0发行说明中看到。考拉公开了许多与pandas相似的api,以便针对数据帧执行原生Python代码,这将受益于python3.8的支持。此外,考拉积极地利用Python中正在大量开发的Python类型提示。考拉的某些类型暗示功能可能只允许在较新的Python版本中使用。考拉1.0.0的目标之一是跟踪熊猫的最新发布并覆盖熊猫1.0中的大部分API。除了跟上API的变化和弃用,API的覆盖范围也得到了测量和改进。考拉还支持最新的熊猫版本作为考拉的依赖,因此最新熊猫版本的用户可以轻松地跳入考拉。火花存取器Spark访问器是从考拉1.0.0引入的,目的是让考拉用户更容易地利用现有的PySpark API。例如,您可以应用PySpark函数,如下所示:进口数据库树袋熊作为ks进口pyspark.sql.functions作为Fkss=第ks系列([1,2,3,4])kss.spark.apply公司(lambda s:F.收集列表)您甚至可以将考拉系列转换为PySpark列并与一起使用Series.spark.transform系列.从databricks导入考拉作为ksdf=ks.数据帧({"a":[1,2,3],"b":[4,5,6]})df.a.公司。火花变换(λc:c+df.b。火花柱)PySpark的特性(如缓存数据帧)也可以在Spark访问器下使用:从databricks导入考拉作为ksdf=ks.数据帧([(.2,.3),(.0,.6),(.6,.0),(.2,.1)])df=测向变换(lambda x:x+1)#转换考拉数据帧与df.spark.cache()作为缓存的磁盘:#缓存转换后的考拉数据帧,#它只需要变换一次偶数#当你触发多次执行时。打印(缓存_测向计数())打印(缓存_东东熊猫())更快的性能许多考拉API依赖于大熊猫的UDF。apachespark3.0引入了新的pandas udf,考拉内部使用它来加速性能,比如数据帧应用(函数)和DataFrame.apply_批处理(函数)。在考拉1.0.0和Spark 3.0.0中,我们看到基准测试的性能提高了20%-25%。更好的类型提示支持大多数执行Python本地函数的考拉api实际上都会获取并输出pandas实例。以前,有必要使用考拉实例作为返回类型提示,这看起来有点尴尬。def pandas_div(pdf)->ks.数据帧[浮动,浮动]:#pdf实际上是一个pandas数据帧。return pdf[['B','C']]/pdf[['B','C']]df=ks.数据帧({'A':['A','A','b'],'b':[1,2,3],'C':[4,6,5]})数据框groupby('A')。应用(熊猫科)在带有Python 3.7及更高版本的考拉1.0.0中,还可以使用返回类型中的pandas实例:def pandas_div(pdf)->pd数据帧[浮动,浮动]:return pdf[['B','C']]/pdf[['B','C']]此外,还实验性地引入了一种新的类型提示,以允许用户在类型提示中指定列名:def pandas_div(pdf)->pd数据帧['B':浮动,'C':浮动]:return pdf[['B','C']]/pdf[['B','C']]用户还可以实验性地使用pandas dtype实例和列索引作为返回类型提示:def pandas_div(pdf)->pd数据帧[新的_pdf.D类型]:return pdf[['B','C']]/pdf[['B','C']]def pandas_div(pdf)->pd数据帧[zip(新_pdf.列,新的_pdf.D类型)]:return pdf[['B','C']]/pdf[['B','C']]更广泛的绘图支持在考拉1.0.0中,考拉绘图功能的API覆盖率已经达到90%。现在在考拉身上可以很容易地实现可视化,就像在熊猫身上一样。例如,pandas中用来绘制面积图的API调用也可以用于考拉数据帧。kdf=ks.数据帧({"销售":[3,2,3,9,10,6,3],"注册":[5,5,6,12,14,13,9],"访问":[20,42,28,62,81,50,90],},索引=pd.date U范围(开始时间="2019/08/15",结束时间="2020/03/09",频率="M")kdf.plot.area()这个例子绘制了一个区域图,并显示了一段时间内销售、注册和访问数量的趋势。更广泛地支持就地更新在考拉1.0.0中,数据帧是完全可变的,在数据帧中进行了连续的就地更新。以前,在数据帧中并没有反映一些就地更新的情况。例如,中的在位更新系列.fillna同时更新其数据帧。kdf=ks.数据帧({"x":[np.nan公司,2,3,4,np.nan公司,6]})kser=kdf.x克瑟·菲尔纳(0,就地=真)此外,现在可以使用访问器更新系列并将更改反映到数据帧中,如下所示。kdf=ks.数据帧({"x":[np.nan公司,2,3,4,np.nan公司,6]})kser=kdf.xkser.loc公司[2] =30kdf=千克ks.数据帧({"x":[np.nan公司,2,3,4,np.nan公司,6]})kser=kdf.xkdf.loc公司[2,"x"]=30更好地支持缺失值NaN和NAPySpark和pandas在处理缺失数据方面有一些细微的差别。例如,丢失的数据在PySpark中通常表示为None,而在Pandas中则表示为NaN。此外,大熊猫还引进了新的实验性价值观,目前在考拉的支持率不高。大多数其他的案例现在已经修复,考拉正在进行大量的开发以逐步解决这个问题。例如,系列.fillna现在可以在考拉1.0.0中正确处理NaN。考拉1.0入门安装考拉的方法有很多种,比如用pip或conda这样的包管理器。这些说明可在考拉安装指南中找到。对于Databricks运行时用户,可以按照以下步骤在Databricks上安装库。请参阅考拉文档中的入门部分,其中包含许多有用的资源。如果你一直推迟尝试考拉,现在是时候了。考拉带来了一个更成熟的熊猫实现,旨在帮助你扩大你的工作火花。大数据集永远不应该成为数据科学项目的障碍,而考拉帮助我们很容易开始。免费试用Databricks。今天就开始吧