将 FASTQ 文件读入 Spark 数据帧

Read FASTQ file into a Spark dataframe

我正在尝试将 FASTQ 文件读入 Spark 数据帧。我遇到了一些困难,因为 FASTQ 是一种多行格式。

示例:

@seq1
AGTCAGTCGAC
+
?@@FFBFFDDH
@seq2
CCAGCGTCTCG
+
?88ADA?BDF8

有没有办法在 Spark 数据帧中获取这些数据,例如

+-------------+-------------+------------+
| identifier  | sequence    | quality    |
+-------------+-------------+------------+
|seq1         |AGTCAGTCGAC  |?@@FFBFFDDH |
|seq2         |CCAGCGTCTCG  |?88ADA?BDF8 |
+-------------+-------------+------------+

感谢您的宝贵时间

我会滑

import org.apache.spark.mllib.rdd.RDDFunctions._

spark.createDataset(sc.textFile(path).sliding(4, 4).map {
  case Array(id, seq, _, qual) => (id, seq, qual)
}).toDF("identifier", "sequence", "quality")


// +----------+-----------+-----------+
// |identifier|   sequence|    quality|
// +----------+-----------+-----------+
// |     @seq1|AGTCAGTCGAC|?@@FFBFFDDH|
// |     @seq2|CCAGCGTCTCG|?88ADA?BDF8|
// +----------+-----------+-----------+