我正在解析一个包含数据的csv文件
03-10-2016,18:00:00,2,6
当我阅读以下文件创建模式时:
StructType schema = DataTypes.createStructType(Arrays.asList(
DataTypes.createStructField("Date", DataTypes.DateType, false),
DataTypes.createStructField("Time", DataTypes.TimestampType, false),
DataTypes.createStructField("CO(GT)", DataTypes.IntegerType, false),
DataTypes.createStructField("PT08.S1(CO)", DataTypes.IntegerType, false)))
Dataset<Row> df = spark.read().format("csv").option("Date", "dd-MM-yyyy").schema(schema).load("src/main/resources/AirQualityUCI/sample.csv");
它产生了以下错误:
Exception in task 0.0 in stage 0.0 (TID 0)
java.lang.IllegalArgumentException
at java.sql.Date.valueOf(Unknown Source)
at org.apache.spark.sql.catalyst.util.DateTimeUtils$.stringToTime(DateTimeUtils.scala:137)
我认为这是由于日期格式错误导致的。有哪些方法可以将它们转换为特定的格式?
dataFormat
对字符串进行格式转换,然后创建所需的数据集。只是好奇。 - Utkarsh Sarafoption
的详细说明或链接? - Utkarsh Saraf