#scala #apache-spark
#scala #apache-spark
Вопрос:
Я пытаюсь проверить неполную запись и определить плохую запись в Spark.
eg. sample test.txt file, it is in record format, columns separated by t
L1C1 L1C2 L1C3 L1C4
L2C1 L2C2 L2C3
L3C1 L3C2 L3C3 L3C4
scala> sc.textFile("test.txt").filter(_.split("t").length < 4).collect.foreach(println)
L2C1 L2C2 L2C3
Вторая строка печатается как имеющая меньшее количество столбцов.
Как я должен анализировать, не игнорируя пустой столбец после во второй строке
Комментарии:
1. sc.textFile(«test.txt «) создаст RDD [строку], а не фрейм данных (столбцы) Не могли бы вы добавить свой ожидаемый результат?
2. я пытался выполнить базовую проверку файла на наличие какой-либо неполной записи (меньше полей, разделенных табуляцией), в другом случае, если запись заканчивается на , она будет продолжена в следующей строке.
Ответ №1:
Это разделенная строка в scala, удаляющая конечные пустые подстроки. Поведение аналогично Java, чтобы проверить все подстроки, которые мы можем вызвать как «L2C1 L2C2 L2C3 «.split(«t»,-1)