Если вы посмотрите на исходный код explain
, вы увидите, что:
def explain(self, extended=False):
if extended:
print(self._jdf.queryExecution().toString())
else:
print(self._jdf.queryExecution().simpleString())
Поэтому, если вы хотите получить план объяснения напрямую, просто используйте метод _jdf.queryExecution()
на вашем фрейме данных:
v = sdf._jdf.queryExecution().toString() # or .simpleString()