我試過幾個代碼和毫無效果。一個額外的空間或線低頻輸出將下一行。在CRLF所有行結束,但一些行結束在低頻和閱讀時csv,不給予正確的輸出。我的csv雙匕首劃
csv是這樣的
‡‡Id‡‡,‡‡版本‡‡,‡‡問卷‡‡,‡‡日期‡‡
‡‡123456‡‡,‡‡Version2‡‡,‡‡所有問題回答準確
和指導問卷是理解和遵循的‡‡,‡‡2010-12-16 00:01:48.020000000‡‡
我嚐試以下代碼
dff = spark.read。選項(“頭”,“真正的”)\
.option (“inferSchema”,“真正的”)\
.option(“編碼”,“utf - 16”) \
.option(“分隔符”、“‡‡,‡‡”)\
.option \(“多行”,真正的)
. csv (“/ mnt /道路/ data.csv”)
dffs_headers = dff.dtypes
顯示器(dff)
因為我在dffs_headers:
columnLabel =我[0]
newColumnLabel = columnLabel.replace (“‡‡’,”) .replace (“‡‡“,”)
的dff = dff.withColumn (newColumnLabel regexp_replace (columnLabel ' ^ \ \‡‡| \ \‡‡美元","))
如果columnLabel ! = newColumnLabel:
dff = dff.drop (columnLabel)
顯示器(dff)
我可以用正則表達式替換.regexp_replace (? < ! \ r \ n’,”),但如何以及在哪裏?
請幫助@ArunKumar-Databricks @Gustavo Barreto @ANUJ加戈@
嗨
進口org.apache.spark.sql。SQLContext val SQLContext = new SQLContext (sc);val df = sqlContext.read.format (csv) .option .option(“標題”、“true”)(“分隔符”、“分隔符”).option (“inferSchema”,真正的“).load (csv文件)
你可以試試這個。如果這不是工作
然後你需要閱讀的文件在抽樣和df和編寫轉換回CSV
CSV - - >抽樣- - > DF - - > FINAL_OUTPUT格式