Используя только Python, я бы использовал zip(), но этот подход не масштабируется.
Я думал об использовании Explosion() в списки, затем преобразовать их в строку и объединить результаты с помощью разделителя, но это кажется неправильным, и у меня возникнут проблемы с сохранением правильности связи данных в столбце A с развернутым результатом.
Есть ли другой способ добиться этого результата?
У меня есть фрейм данных со столбцами A, B и C, где B и C — столбцы списка. [code]df = pl.DataFrame({ 'A': ['t', 'u', 'v'], 'B': [['a', 'v', 'x'], ['f', 'g', 'h'], ['p', 'o', 'i']], 'C': [[11, 12, 14], [41, 42, 43], [66, 77, 88]] }) [/code] Мне нужно объединить следующее: [code]Original: ┌─────┬─────────────────┬──────────────┐ │ A ┆ B ┆ C │ │ --- ┆ --- ┆ --- │ │ i64 ┆ list[str] ┆ list[i64] │ ╞═════╪═════════════════╪══════════════╡ │ t ┆ ["a", "v", "x"] ┆ [11, 12, 14] │ │ u ┆ ["f", "g", "h"] ┆ [41, 42, 43] │ │ v ┆ ["p", "o", "i"] ┆ [66, 77, 88] │ └─────┴─────────────────┴──────────────┘
Final: ┌─────┬─────────────────────────────────────┐ │ A ┆ zip(B,C) │ │ --- ┆ --- │ │ i64 ┆ object(?) │ ╞═════╪═════════════════════════════════════╡ │ t ┆ [('a', 11), ('v', 12), ('x', 14) ] │ │ u ┆ [('f', 41), ('g', 42), ('h', 43) ] │ │ v ┆ [('p', 66), ('o', 77), ('i', 88) ] │ └─────┴─────────────────────────────────────┘ [/code] Используя только Python, я бы использовал zip(), но этот подход не масштабируется. Я думал об использовании Explosion() в списки, затем преобразовать их в строку и объединить результаты с помощью разделителя, но это кажется неправильным, и у меня возникнут проблемы с сохранением правильности связи данных в столбце A с развернутым результатом. Есть ли другой способ добиться этого результата?