python-如何使用“] | [”分隔符读取pyspark中的文件

数据如下所示:

pageId] | [page] | [Position] | [sysId] | [carId
 0005] | [宝马] | [南部] | [AD6] | [OP4

至少有50列和数百万行.

我确实尝试使用下面的代码来阅读:

dff = sqlContext.read.format(“ com.databricks.spark.csv”).option(“ header”,“ true”).option(“ inferSchema”,“ true”).option(“ delimiter”,“] | [“).load(trainingdata” part-00000“)

它给了我以下错误:

IllegalArgumentException:u’分隔符不能超过一个字符:] | [‘

解决方法:

您可以在RDD中使用多个字符作为分隔符

你可以试试这个代码

from pyspark import SparkConf, SparkContext
from pyspark.sql import SQLContext

conf = SparkConf().setMaster("local").setAppName("test")
sc = SparkContext(conf = conf)

input = sc.textFile("yourdata.csv").map(lambda x: x.split(']|['))

print input.collect()

您可以使用toDF()函数将RDD转换为DataFrame(如果需要),并且不要忘记指定架构

上一篇:2021-07-10


下一篇:androidview的事件分发,34岁安卓开发大叔感慨