我有如下文本格式的输入数据。我需要把它转换成scala中的十进制数。请帮我看一下演员表。+0000025.42我尝试了.cast(decimaltype(11,2)),它显示为null
z9ju0rcb1#
可能在吃点东西 text 因为无法将数据转换为 decimal(11,2) 正在添加类型(&I) null 在那个专栏里。检查该列中的数据。
text
decimal(11,2)
null
scala> val df = Seq(("+0000025.42"),("sample")).toDF df: org.apache.spark.sql.DataFrame = [value: string] scala> df.show(false) +-----------+ |value | +-----------+ |+0000025.42| |sample | +-----------+ scala> df.select($"value".cast("decimal(11,2)").as("value")).show(false) +-----+ |value| +-----+ |25.42| |null | +-----+
1条答案
按热度按时间z9ju0rcb1#
可能在吃点东西
text
因为无法将数据转换为decimal(11,2)
正在添加类型(&I)null
在那个专栏里。检查该列中的数据。