我不得不在项目的某些部分使用SparkR,我通常使用scala。我使用以下代码写出文件
root
|-- price: integer (nullable = true)
|-- timestamp: double (nullable = true)
然而,当我去查看写出的输出时,我的一个变量,在这种情况下,时间戳是用科学记数法写出来的,例如: 1.4262E12。当我宁愿长时间,例如1426256000000.由于某种原因,我无法弄清楚为什么write.json会以这种方式编写文件。在写出文件之前,我查看我的火花数据框并查看写出的时间戳。任何人都可以帮助/建议解决这个问题吗?
以下是架构的示例,必须保持这种方式:
{{1}}
答案 0 :(得分:1)
感谢@nate,这解决了我的问题,它适用于我必须使用的Schema:
sdf$timestamp <- SparkR::cast(sdf$timestamp, "long")