У меня есть два кадра данных с одним и тем же столбцом MapType.При объединении этих фреймов данных мне бы хотелось, чтобы пары ключ: значение dataframe1 и dataframe2 находились в одном столбце, а не в двух отдельных.
Это для Pyspark 2.0.Я собираюсь использовать его на фреймах данных с каждыми ~ 200 миллионами строк, так что сбор или подобные подходы, скорее всего, не будут обсуждаться.
Примеры фреймов данных, над которыми я сейчас работаю, оба имеют схему:
root
|-- ID: string (nullable = true)
|-- mapCol: map (nullable = false)
| |-- key: string
| |-- value: float (valueContainsNull = true)
После объединения фреймов данных я получаю такую схему:
root
|-- ID: string (nullable = true)
|-- mapCol: map (nullable = false)
| |-- key: string
| |-- value: float (valueContainsNull = true)
|-- ID: string (nullable = true)
|-- mapCol: map (nullable = true)
| |-- key: string
| |-- value: float (valueContainsNull = true)
Цель состоит в том, чтобы остаться с исходной схемой (возможно, дополнительный столбец для dataframe1.ID и dataframe2.ID для размещения отсутствующих строк в одном или другом кадре данных).