0

次のスキーマを持つ PySpark データ フレームがあるとします。

root
 |-- struct1: struct (nullable = true)
 |    |-- struct2: struct (nullable = true)
 |    |    |-- array1: array (nullable = true)
 |    |    |    |-- **struct3: struct (containsNull = true)
 |    |    |    |    |-- name1: string (nullable = true)**
                     |-- name2: string (nullable = true)
           |
           |-- array2: array (nullable = true)
                |-- **struct4: struct (containsNull = true)
                |    |-- name1: string (nullable = true)**
                     |-- name3: string (nullable = true)

struct3 struct4 には共通の列名があることに注意してください name1 ( を参照 ** )。

質問 name1 from の列で期待値を実行するにはどうすればよい struct3 ですか? 大きな期待は、期待を実行するためにどの構造体を使用するかについて混乱するでしょうか? 特に、次のコマンドで大きな期待が混乱するbatch.expect_column_to_exist('name1')でしょうか?

データを平坦化し、 や のような列を作成したとしても struct3.name1 struct4.name1 これは大きな期待を混乱させるでしょうか?

4

0 に答える 0