有没有办法通过从数据帧的每一行中提取几列来创建 XML SOAP REQUEST?数据帧中的 10 条记录意味着 10 个单独的 SOAP XML 请求。
现在您将如何使用 map 进行函数调用?
最佳答案
您可以通过应用 map 来做到这一点函数到数据框。
val df = your dataframe
df.map(x => convertToSOAP(x))
// convertToSOAP is your function.
根据您的评论提出一个示例,希望您觉得这有用。
case class emp(id:String,name:String,city:String)
val list = List(emp("1","user1","NY"),emp("2","user2","SFO"))
val rdd = sc.parallelize(list)
val df = rdd.toDF
df.map(x => "<root><name>" + x.getString(1) + "</name><city>"+ x.getString(2) +"</city></root>").show(false)
// Note: x is a type of org.apache.spark.sql.Row
输出如下:
+--------------------------------------------------+
|value |
+--------------------------------------------------+
|<root><name>user1</name><city>NY</city></root> |
|<root><name>user2</name><city>SFO</city></root> |
+--------------------------------------------------+
关于scala - 从 Scala 中选定的数据帧列创建 SOAP XML REQUEST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58222847/