Как правильно использовать новый pyspark.pandas?

#pandas #pyspark #databricks

Вопрос:

Это недавнее сообщение в блоге от Databricks https://databricks.com/blog/2021/10/04/pandas-api-on-upcoming-apache-spark-3-2.html говорит, что единственное изменение, необходимое для программы pandas, чтобы запустить ее под pyspark.pandas, — это изменить from pandas import read_csv на from pyspark.pandas import read_csv .

Но это кажется неправильным. Как насчет всех других (не read_csv ) ссылок на pandas? Разве не правильный подход для изменения import pandas as pd import pyspark.pandas as pd ? Тогда все другие ссылки pandas в вашей существующей программе будут указывать на версию pandas в pyspark.

Ответ №1:

Вы правильно поняли. Однако канонический способ, который они предложили, таков, from pyspark import pandas as ps

Комментарии:

1. Спасибо. Я могу это проверить. Значит, это означает прохождение всей моей программы и изменение всех pd на ps? Не совсем изменение в одну строку.

2. Эта строка не работает. Это приводит к ошибке… Ошибка импорта: не удается импортировать имя ‘pandas’ из ‘pyspark.pandas’ (/databricks/spark/python/pyspark/pandas/__init__.py )

3. Извините, я виноват. Отредактировал ответ!

4. Вышеуказанное работает. Но для моего кода я решил, что более понятно использовать pspd (PySpark pandas) вместо ps. Это отличает PySpark.pandas от самого PySpark.