Несколько фильтров на искровом фрейме - не работает - PullRequest
0 голосов
/ 29 апреля 2020

Я очень новичок, чтобы зажечь. У меня есть довольно большие CSV-файлы для анализа. Я использовал pandas .read_csv ('путь к моему объекту s3'), но поскольку файлы имеют размер около 30-50 ГБ или более, это занимает очень много времени. Вот почему я выбираю go с искрой. Сейчас читаю мой CSV с искрой.

Устранение ошибки из преобразования Pandas, так как сейчас я пытаюсь изменить завершенные задачи в pyspark, как было предложено.

Отредактированная часть:

Data.csv:

col1 col2 col3 10.1.1.1 10.2.1.1 6 10.1.1.2 10.2.1.2 7 10.1.1.3 10.2.1.3 4 10.1.1.4 10.2.1.4 8 10.1.1.5 10.2.1.5 10 10.1.1.6 10.2.1.6 3 10.1 .1.7 10.2.1.7 3

list1 - 10.1.1.1, 10.1.1.2, 10.1.1.3, 10.1.1.4 list2 - 10.2.1.3, 10.2.1.4, 10.2.1.5, 10.2.1.6

df1 = data.where ((col ("col1"). Isin (list1)) & (~ col ("col1"). Isin (list2)))

Я использовал df1.show () - и это показало мне правильный вывод. Я также использовал df1.count () (чтобы убедиться, что он выполняет действительное действие и df1 создан)

df2 = df1.where ((col ("col1"). Isin (list3)) & (~ col ("col1"). isin (list4))) Когда я запускаю это, код зависает. Я подозреваю, что df1 на самом деле не создан, и поэтому он не может фильтровать на df1.

Любые предложения о том, как сделать дополнительные фильтры на df1.

...