私はpysparkデータフレームを持っており、スキーマは次のようになります。sparkデータフレーム内の既存の構造体に要素を追加する
root
|-- useragent: string (nullable = true)
|-- properties: struct (nullable = true)
| |-- browser: string (nullable = true)
| |-- device: string (nullable = true)
私はudf + withColumnを使用して、ユーザーエージェントの詳細情報を抽出しています。しかし、私は新しい列に作成している追加のプロパティだけを保存することができます。私はそれを構造体自体に追加する方法はありますか?
私は、スキーマを変更したが、それは、私はすでにそれがRDDにこれを変換するために、より理にかなって
df = df.schema['properties'].dataType.add(StructField('type', StringType()))
を存在する他のプロパティから必要なすべてのデータを転送しないのですか?