scala - 将 1 列拆分为多列时显示编译错误
问题描述
在使用下面的代码将我在 dataFrame 中的一列拆分为 2 列时,我尝试了两种类型的代码,但是在运行程序时出现错误。在 IteliJ 屏幕中它没有显示错误(意味着没有红色标记)但是在运行时它在控制台上显示错误。我的数据框是:+---------+ |Wrap Time| +---------+ | 19.674| | 11.466| | 263.697|
代码:1
val df2= df.withColumn("nested", split(col("Wrap Time"), "."))
.withColumn("Call Completion Code_1", $"nested".getItem(0))
.withColumn("Call Completion Code_2", $"nested".getItem(1))
.withColumn("Call Completion Code_3", $"nested".getItem(2))
.drop("nested")
错误:(26, 43) 找不到参数 impl 的隐式值:breeze.linalg.split.Impl2[org.apache.spark.sql.Column,String,VR] val df2= df.withColumn("nested", split (col("换行时间"), "."))
错误:(26, 43) 方法应用的参数不足:(隐式 impl:breeze.linalg.split.Impl2[org.apache.spark.sql.Column,String,VR])VR 特性 UFunc。未指定值参数 impl。val df2= df.withColumn("nested", split(col("Wrap Time"), "."))
代码:2:
val df2= df.
withColumn("nested", split($"Wrap Time", ".")).select($"nested"(0) as "Call Completion Code_1", $"nested"(1) as "Call Completion Code_2")
错误:(23, 33) 找不到参数 impl 的隐式值:breeze.linalg.split.Impl2[org.apache.spark.sql.ColumnName,String,VR] withColumn("nested", split($"Wrap Time ", ".")).select($"nested"(0) as "Call Completion Code_1", $"nested"(1) as "Call Completion Code_2")
错误:(23, 33) 方法应用的参数不足:(隐式 impl:breeze.linalg.split.Impl2[org.apache.spark.sql.ColumnName,String,VR])VR 特性 UFunc。未指定值参数 impl。withColumn("nested", split($"Wrap Time", ".")).select($"nested"(0) as "Call Completion Code_1", $"nested"(1) as "Call Completion Code_2")
spark版本为:spark-2.3.2
scala 2.11.8
jdk1.8.0_20 sbt-1.2.7
解决方案
你能试试下面的代码吗?它应该工作。
val df2=df.withColumn("_tmp", split($"WRAP", "\\.")) .select( $"_tmp".getItem(0).as("col1"), $"_tmp". getItem(1).as("col2") )
推荐阅读
- javascript - TypeError:无法读取 React 中未定义的属性“注释”
- c++ - 用纯虚函数绕圈子
- javascript - 绝对新手 - 第一个功能问题
- php - 是什么导致此 Ajax 调用出现 403 -Forbidden 错误
- amazon-web-services - BATS::SAM::CodeS3Bucket 在云形成模板中的作用是什么
- flutter - 减少 Flutter 中 dispose() 的样板文件?
- r - 是否有一个库可以提供更好的决策树图片,或者是否有另一种方法可以让我的决策树在 R 中更易于阅读?
- android - 无法使用 Dagger Hilt `@WorkerInject` 注入 Android WorkManager Worker
- unity3d - “GameObject”不包含“Play”的定义(您是否缺少 using 指令或程序集引用?)
- wordpress - 如何让我的 wordpress 网站能够让用户下载和上传文件?