从TSV文件创建DataFrame

时间:2018-03-16 03:56:42

标签: scala apache-spark dataframe rdd

我在scala编程: 我有一个带有13个“属性”的TSV文件。 我的目标是制作数据框。 到目前为止,我已设法: 1)制作org.apache.spark.rdd.RDD[String]

val rdd = sc.textFile("file.tsv")

我可以分开它:

rddsplit = rdd.map(_split("\t"))

据我了解,我现在必须制作一个RDD [ROW],我可以将其转换为数据帧:

val df = rddrow.toDF()

但是如何从rddsplit转换为RDD [ROW]?

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

您可以使用TSV

直接阅读spark csv文件

Spark 2.X

val spark = SparkSession.builder().appName("test").master("local[*]").getOrCreate()
val data = spark.read.option("delimiter", "\t").csv("path to file")

Spark 1.X

val data = sqlContext.read.format("com.databricks.spark.csv")
  .option("delimiter", "\t")
  .load("path to file")

这为您提供了数据框,只需

即可转换为RDD[ROW]
data.rdd

有关选项的详情,请参阅here