如何在Scala中拆分数据框?
{code}---
{code}---
答案 0 :(得分:0)
理想情况下,您应该使用RDD API处理非结构化数据。
读取textFile会返回一个RDD[String]
,可以使用纯scala函数将其映射以进行转换(构造)。
答案 1 :(得分:0)
您可以使用以下内容:
import org.apache.spark.sql.SparkSession
val spark = SparkSession.builder().appName("test").master("local[2]").getOrCreate()
import spark.implicits._
val testDf = Seq("66.249.69.97 - - [24/Sep/2014:22:25:44 +0000] \"GET /071300/242153 HTTP/1.1\" 404 514 \"-\" \"Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)\"").toDF
testDf.map(r => {
val splittedString = r.getString(0).split("-")
(splittedString(0), splittedString(1), splittedString(2), splittedString(3))
}).show
结果: