我有一个嵌套列的字典,每个列都以索引作为键。当我尝试将其转换为 polars 数据框时,它会正确获取列名和值,但每列只有一个元素,即列元素的字典,而不会将其“扩展”为一系列。
举个例子,假设我有:
d = {'col1': {'0':'A','1':'B','2':'C'}, 'col2': {'0':1,'1':2,'2':3}}
然后,当我执行pl.DataFrame(d)
或 时pl.from_dict(d)
,我得到:
col1 col2
--- ---
struct[3] struct[3]
{"A","B","C"} {1,2,3}
而不是常规的数据框。
知道如何修复这个问题吗?
提前致谢!
没有特别直接的方法可以做到这一点。基本上,你必须一次取出一列,然后将其取消透视,然后再将每列重新连接在一起。
设置
达到(我认为的)期望的输出
如果索引键保证平衡,则简化
如果您可以确保嵌套列的键始终是统一且有序的,您可以将其作为
map_batches
带有连接的 for 循环来执行。