[英]Spark Java - Replace specific String with another String in a dataset
[英]How to replace a string value to int in Spark Dataset?
例如,輸入數據:
1.0
\N
架構:
val schema = StructType(Seq(
StructField("value", DoubleType, false)
))
讀入Spark數據集:
val df = spark.read.schema(schema)
.csv("/path to csv file ")
當我使用此數據集時,我將得到一個異常,因為“ \\ N”對double無效。 如何在此數據集中將“ \\ N”完全替換為0.0? 謝謝。
如果數據格式錯誤,請不要使用類型不當的架構。 將輸入定義為StringType
:
val schema = StructType(Seq(
StructField("value", StringType, false)
))
並稍后投射數據:
val df = spark.read.schema(schema).csv("/path/to/csv/file")
.withColumn("value", $"value".cast("double"))
.na.fill(0.0)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.