как сохранить сопоставленные данные отдельно во время плоской карты - PullRequest
0 голосов
/ 29 октября 2019
files = sc.wholeTextFiles("/path/to/data*")
//files is of length N
x = files.map(lambda x: x[1])
//x is of length N with disregarding path name
y = x.flatMap(lambda p: p.split('\n'))

y - это набор всех строк, я бы хотел, чтобы это разделение на N частей, а не объединение в одну, сохраняло, какие строки находятся в каком исходном файле. Так что если в настоящее время мое значение y содержит 10000 элементов, а у меня 10 файлов. Я хочу, чтобы в y было 10 элементов, и каждый элемент - это коллекция, содержащая строки для этого конкретного файла.

Как мне это сделать?

1 Ответ

0 голосов
/ 30 октября 2019

@ asdasd2a43qaad

Если я правильно понял, вы можете достичь этого с map вместо flatMap на x

y = x.map(lambda p: p.split('\n'))

Надеюсь, что этопомогает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...