栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Spark DataFrame方法“ toPandas”实际上在做什么?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spark DataFrame方法“ toPandas”实际上在做什么?

使用spark将CSV文件读取到中

pandas
是实现将CSV文件读取到内存的最终目标的一种round回方法。

似乎您可能误解了此处使用的技术的用例。

Spark用于分布式计算(尽管可以在本地使用)。通常,它太重了,无法用于简单地读取CSV文件。

在您的示例中,该

sc.textFile
方法将简单地为您提供火花RDD,该火花RDD实际上是文本行列表。这可能不是您想要的。不会执行类型推断,因此,如果您想对CSV文件中的一列数字求和,则将无法执行,因为就Spark而言,它们仍然是字符串。

只需使用

pandas.read_csv
并将整个CSV读取到内存中即可。熊猫会自动推断每列的类型。Spark不会这样做。

现在回答您的问题:

它是否将Pandas对象存储到本地内存

是。

toPandas()
会将Spark Dataframe转换成Pandas Dataframe,它当然在内存中。

熊猫的低级计算是否全部由Spark处理

否。熊猫运行自己的计算,spark和pandas之间没有相互作用,仅存在 一些 API兼容性。

它是否公开了所有熊猫数据框功能?

否。例如,

Series
对象具有
interpolate
PySpark
Column
对象中不可用的方法。Pandas
API中有很多方法和函数,而PySpark API中没有。

我可以将它转换为Pandas并完成它,而无需过多接触Dataframe API吗?

绝对。实际上,在这种情况下,您甚至根本不应该使用Spark。

pandas.read_csv
除非你是一个工作很可能会处理你的使用情况 庞大 的数据量。

尝试使用简单,技术含量低,易于理解的库来解决您的问题,并且 在需要 时才 去处理更复杂的问题。很多时候,您将不需要更复杂的技术。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/404561.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号