Просто проверка df.columns['a']['b']['c']['d'] или df.columns['a.b.c.d'], похоже, не работают, поэтому я обнаружил, что можно использовать функцию df.schema.
Поэтому я просто перебираю, например:
Код: Выделить всё
y = df.schema['a'].dataType['b'].dataType['c'].dataType
Я просто попробовал y['d'], и если не получится, то его не существует.
Но я не думаю, что использование try — лучший способ.
Поэтому я попробовал проверить if 'd' в y, но, видимо, это не работает, хотя извлечение элемента y['d'] работает, если он существует.
Тип y — StructType(List(StructField(d,StringType,true),...other columns))
Поэтому я действительно не знаю, как правильно проверить, находится ли d в y. Почему я не могу напрямую проверить, есть ли «d» в y, когда я могу получить y['d']? Кто-нибудь может помочь? Я тоже новичок в Python, но не могу найти или придумать другое решение.
Подробнее здесь: https://stackoverflow.com/questions/406 ... -dataframe
Мобильная версия