我有一个声明来分割包含电子邮件ID的列的值w.r.t' @' :
split(col("Email_Address"),"@").as("User_Id")
对于电子邮件ID test@gmail.com
,上述语句会将数据集作为["test","gmail.com"]
返回。
Apache Spark java doc说分割函数返回'列'。
如何将列转换为数组或列表,以便我只能提取' @'之前的字符串?
我尝试使用强制转换功能:
split(col("Email_Address"),"@").cast("String[]")[0].as("User_Id")
但这并没有把它变成阵列。