Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 错误:值拆分不是Char的成员_Scala_Apache Spark - Fatal编程技术网

Scala 错误:值拆分不是Char的成员

Scala 错误:值拆分不是Char的成员,scala,apache-spark,Scala,Apache Spark,导入spark.implicits_ case class x(Data_time_Occured:String,Duplicate_Count:Int,Message:String) val Final_df1=Final_df.map(_.split(",")).map(x=> (x(0).trim.toString,x(1).trim.toInt,x(2).trim.toString)).toDF("Data_time_Occured","Duplicate_Count","Mes

导入spark.implicits_

case class x(Data_time_Occured:String,Duplicate_Count:Int,Message:String)

val Final_df1=Final_df.map(_.split(",")).map(x=> (x(0).trim.toString,x(1).trim.toInt,x(2).trim.toString)).toDF("Data_time_Occured","Duplicate_Count","Message")
===最终的_DF中的值是===:
Final_df:String=13/4/2020,0

Sql表中未加载重复记录。请继续监视加载情况。您正在对单个字符串值应用映射操作,然后对其应用拆分。映射操作将此字符串转换为单个字符,然后您尝试对单个字符应用拆分选项,这就是为什么会出现此错误

如果您想在逗号的基础上拆分此字符串,下面是您可以执行此操作的方法

val Final_df1 = Final_df.split(",")
这将解决您的错误,然后您可以根据需要应用您的转换以向前推进

如果这能解决您的问题,请接受答案。

可以将“Final_df”类型更改为:

val originalString = "Data_time_Occured1,4,Message1"
val Final_df = Seq(originalString)
Final_df.map(_.split(",")).map(x => (x(0).trim.toString, x(1).trim.toInt, x(2).trim.toString)).toDF("Data_time_Occured", "Duplicate_Count", "Message")

感谢您的回复,我尝试基于逗号拆分该字符串,我尝试创建带有3个标题的数据框来存储拆分后的值。当我尝试创建数据框时,仍然会出错。PFB!!​ val Final\u df1=Final\u df.split(“,”).toDF(“数据发生时间”、“重复计数”、“消息”)错误:值toDF不是数组的成员[String]val Final\u df1=Final\u df.split(“,”).toDF(“数据发生时间”、“重复计数”、“消息”)像帕夏那样做suggested@manoj:如果解决了您的问题,请接受答案,或者发布您现在面临的问题。final\u df2.write.mode(“覆盖”).saveAsTable(“表1”)​ 错误:值写入不是单元Final_df2的成员。write.mode(“覆盖”)。saveAsTable(“table1”)已工作:),非常感谢Pasha,如果有任何进一步的帮助,我会让你们知道:)