dataframe一列转化一个字符串_DataFrame 对其列的各种转化处理

前置

Oracle中INSTR的用法:

INSTR(源字符串, 要查找的字符串, 从第几个字符开始, 要找到第几个匹配的序号)

例如:INSTR('CORPORATE FLOOR','OR', 3, 2)中,

源字符串为'CORPORATE FLOOR', 在字符串中查找'OR',

从第三个字符位置开始查找"OR",取第三个字后第2个匹配项的位置。

oracle的substr函数的用法:

取得字符串中指定起始位置和长度的字符串

substr( string, start_position, [ length ] )

如:

substr('This is a test', 6, 2) would return 'is'

import org.apache.spark.sql.functions._

场景1:我们想要对DataFrame a Column 进行进行字符串的长度截取

方式一:Function "expr"

val data = List("first", "second", "third")

val testDF = sc.parallelize(data).toDF("col")

val result = testDF.withColumn("newcol", expr("substring(col, 1, length(col)-1)"))

result.show(false)

方式二: use $

你可能感兴趣的:(dataframe一列转化一个字符串_DataFrame 对其列的各种转化处理)