Поскольку мы в Spark, мы рассматриваем большие наборы данных, для которых Pandas (и Python) все еще догоняют. Я пытаюсь подчеркнуть, что причина, по которой вы, возможно, сочли PySpark более подходящим для решения вашей проблемы обработки данных, - это как раз количество данных - слишком большое, чтобы pandas мог нормально обрабатываться.
С этим сказал, вы просто не можете думать об огромном наборе данных как о чем-то, что можно «ранжировать», поскольку ни один компьютер не может с ним справиться (либо из-за нехватки оперативной памяти, либо из-за нехватки времени).
Чтобы ответить на ваш вопрос:
можно извлечь подмножество строк и сохранить его в другом pandas фрейме данных.
подумайте о filter
или where
, которые вы используете для фильтрации строк, которые вы не используете Я хочу включить в набор данных результата.
Это может быть следующим образом (с использованием Scala API):
val cdf: DataFrame = ...
val result: DataFrame = cdf.where("here comes your filter expression")
Используйте result
фрейм данных, но вы используете sh. Это то, с чем вы хотели работать, и теперь оно доступно. Это своего рода «Искровой путь».