gpt4 book ai didi

pyspark - 在pyspark 2中读取文本文件

转载 作者:行者123 更新时间:2023-12-04 01:52:25 28 4
gpt4 key购买 nike

我正在尝试使用 python 在 spark 2.3 中读取一个文本文件,但出现此错误。这是文本文件的格式:

name marks
amar 100
babul 70
ram 98
krish 45

代码:

df=spark.read.option("header","true")\
.option("delimiter"," ")\
.option("inferSchema","true")\
.schema(
StructType(
[
StructField("Name",StringType()),
StructField("marks",IntegerType())
]
)
)\
.text("file:/home/maria_dev/prac.txt")

错误:

java.lang.AssertionError: assertion failed: Text data source only
produces a single data column named "value"

当我尝试将文本文件读入 RDD 时,它被收集为一个列。

应该更改数据文件还是更改代码?

最佳答案

而不是 .text (仅生成单值列)使用 .csv 将文件加载到 DF。

>>> df=spark.read.option("header","true")\
.option("delimiter"," ")\
.option("inferSchema","true")\
.schema(
StructType(
[
StructField("Name",StringType()),
StructField("marks",IntegerType())
]
)
)\
.csv('file:///home/maria_dev/prac.txt')

>>> from pyspark.sql.types import *
>>> df
DataFrame[Name: string, marks: int]
>>> df.show(10,False)
+-----+-----+
|Name |marks|
+-----+-----+
|amar |100 |
|babul|70 |
|ram |98 |
|krish|45 |
+-----+-----+

关于pyspark - 在pyspark 2中读取文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52375499/

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