inn*_*neb 17 csv apache-spark pyspark
我想在Apache Spark中读取具有以下结构的文件.
628344092\t20070220\t200702\t2007\t2007.1370
Run Code Online (Sandbox Code Playgroud)
分隔符是\ t.如何在使用spark.read.csv()时实现这一点?
csv太大而无法使用pandas,因为读取此文件需要很长时间.有没有一种方法与之相似
pandas.read_csv(file, sep = '\t')
Run Code Online (Sandbox Code Playgroud)
非常感谢!
T. *_*ęda 30
使用spark.read.option("delimiter", "\t").csv(file)
或sep
代替delimiter
.
如果它是字面意思\t
,而不是tab特殊字符,请使用double \
:spark.read.option("delimiter", "\\t").csv(file)
这对我有用,而且更清楚(对我来说):正如您所提到的,在 pandas 中您会这样做:
df_pandas = pandas.read_csv(file_path, sep = '\t')
Run Code Online (Sandbox Code Playgroud)
在火花中:
df_spark = spark.read.csv(file_path, sep ='\t', header = True)
Run Code Online (Sandbox Code Playgroud)
请注意,如果 csv 的第一行是列名称,则应设置 header = False,如下所示:
df_spark = spark.read.csv(file_path, sep ='\t', header = False)
Run Code Online (Sandbox Code Playgroud)
您可以更改分隔符 (sep) 以适合您的数据。
归档时间: |
|
查看次数: |
30478 次 |
最近记录: |