我有一个包含文本列的DataFrame
,我想将Column
中的文本截断到一定长度。我尝试了以下操作:
val updatedDataFrame = dataFrame.withColumn("NewColumn", col("ExistingColumn").take(15))
我收到以下错误,因为我转换了Column
而不是其内容:
笔记本:7:错误:值获取不是 的成员 org.apache.spark.sql.Column .withColumn("NewColumn", col("ExistingColumn"(.take(15((
使用方法子字符串,如下所示:
import org.apache.spark.sql.functions._
import spark.implicits._
val df = Seq( (1, "abcdef"), (2, "uvwx") ).toDF("id", "value")
df.withColumn("value3", substring($"value", 1, 3)).show
// +---+------+------+
// | id| value|value3|
// +---+------+------+
// | 1|abcdef| abc|
// | 2| uvwx| uvw|
// +---+------+------+