当我使用 Spark DataSet 加载 csv 文件时。我更喜欢清楚地指定模式。但我发现有几行不符合我的架构。一列应该是双精度的,但有些行是非数字值。是否可以轻松地从 DataSet 中过滤出所有不符合我的架构的行?
val schema = StructType(StructField("col", DataTypes.DoubleType) :: Nil)
val ds = spark.read.format("csv").option("delimiter", "\t").schema(schema).load("f.csv")
Run Code Online (Sandbox Code Playgroud)
f.csv:
a
1.0
Run Code Online (Sandbox Code Playgroud)
我更喜欢可以轻松地从我的数据集中过滤“a”。谢谢!