gpt4 book ai didi

csv - 如何将包含许多字段的大型 csv 加载到 Spark

转载 作者:行者123 更新时间:2023-12-04 12:49:16 24 4
gpt4 key购买 nike

新年快乐!!!

我知道以前有人问过/回答过这种类型的类似问题,但是,我的情况不同:

我有超过 100 个字段和 100MB 以上的大型 csv,我想将它加载到 Spark (1.6) 进行分析,csv 的标题看起来像附件 sample (只有一行数据)

非常感谢。

更新 1(美国东部时间 2016.12.31.1:26pm):

我使用以下方法并能够加载数据(具有有限列的示例数据),但是,我需要自动将标题(来自 csv)分配为 DataFrame 中的字段名称,但是,DataFrame 看起来像:

enter image description here谁能告诉我该怎么做?请注意,任何手动方式都是我要避免的。

>>> import csv
>>> rdd = sc.textFile('file:///root/Downloads/data/flight201601short.csv')
>>> rdd = rdd.mapPartitions(lambda x: csv.reader(x))
>>> rdd.take(5)
>>> df = rdd.toDF()
>>> df.show(5)

最佳答案

如评论中所述,您可以将 spark.read.csv 用于 spark 2.0.0+ ( https://spark.apache.org/docs/2.0.0/api/python/pyspark.sql.html )

df = spark.read.csv('your_file.csv', header=True, inferSchema=True)

header 设置为 True 会将 header 解析为数据帧的列名。将 inferSchema 设置为 True 将获取表架构(但会减慢读取速度)。

另见此处: Load CSV file with Spark

关于csv - 如何将包含许多字段的大型 csv 加载到 Spark,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41410209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com