Я использую библиотеку Crealytics Spark для чтения рабочей книги Excel в фрейм данных Spark с помощью записной книжки Python для Databricks.
Закодированный таким образом, работает нормально:
df = spark.read.format("com.crealytics.spark.excel")
.option("useHeader","true")
.option("dataAddress","'Sheet1'!")
.load("/FileStore/tables/Test.xlsx")
Я хотел бы прочитать динамический список опций из таблицы в структуру PySpark (например, list или dict) и передать их в DataFrame как varargs.
Однако, он терпит неудачу даже при попытке передатьтолько в одном варианте:
test = {"useHeader":"True"}
df = spark.read.format("com.crealytics.spark.excel")
.option(*test)
.option("dataAddress","'Sheet'!")
.load("/FileStore/tables/Test.xlsx")
TypeError: option () принимает ровно 3 аргумента (2 дано)