需要从rdd中删除非可打印字符。
以下是示例数据。
预期输出
尝试了下面的代码,但它没有起作用。
以下是示例数据。
"@TSX•","None"
"@MJU•","None"
预期输出
@TSX,None
@MJU,None
尝试了下面的代码,但它没有起作用。
sqlContext.read.option("sep", ","). \
option("encoding", "ISO-8859-1"). \
option("mode", "PERMISSIVE").csv(<path>).rdd.map(lambda s: s.replace("\xe2",""))
sc.textFile(input path ).map(_.split(",").map(x => x.replaceAll("^\"|\"$", "").replaceAll("[^\\x00-\\x7F]", "")).mkString(",")).saveAsTextFile(output path )
。它的作用是将所有非 ASCII 字符替换为空,并替换开头和结尾的引号。希望这对你有所帮助,如果有帮助,请点赞。 - Ramesh Maharjan