我有一组 Excel 表,我试图通过com.crealytics.spark.excel包通过 spark 读取。在我的 excel 表中,我有一列调查 ID,其中包含整数 ID。当我通过 spark 读取数据时,我看到这些值被转换为双精度值。
从 excel 表中读取时如何保留整数值的格式?
这是我尝试过的:
val df = spark.read.format("com.crealytics.spark.excel")
.option("location", <somelocation>)
.option("useHeader", "true")
.option("treatEmptyValuesAsNulls", "true")
.option("inferSchema", "true")
.option("addColorColumns","False")
.load()
实际价值
通过 Spark 读取的值
+-----------+
| Survey ID|
+-----------+
|1.7632889E7|
|1.7632889E7|
|1.7632934E7|
|1.7633233E7|
|1.7633534E7|
|1.7655812E7|
|1.7656079E7|
|1.7930478E7|
|1.7944498E7|
|1.8071246E7|
如果我将列转换为整数,我会得到所需的格式化数据。但是有没有更好的方法来做到这一点?
val finalDf=df.withColumn("Survey ID", col("Survey ID").cast(sql.types.IntegerType))