You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Polars中实现Pandas的to_dict(orient='records')效果?

如何让Polars生成与Pandas to_dict(orient='records')一致的输出

要在Polars中得到和Pandas df.to_dict(orient='records')相同的输出(每行对应一个字典的列表),你可以使用Polars内置的to_dicts()方法,这是最直接高效的方式。

示例代码

import polars as pl

df = pl.DataFrame({
    'column_1': [1, 2, 1, 4, 5],
    'column_2': ['Alice', 'Bob', 'Alice', 'Tom', 'Tom'],
    'column_3': ['Alice1', 'Bob', 'Alice2', 'Tom', 'Tom']
})

# 生成与Pandas orient='records'一致的结果
result = df.to_dicts()
print(result)

输出结果

[{'column_1': 1, 'column_2': 'Alice', 'column_3': 'Alice1'}, {'column_1': 2, 'column_2': 'Bob', 'column_3': 'Bob'}, {'column_1': 1, 'column_2': 'Alice', 'column_3': 'Alice2'}, {'column_1': 4, 'column_2': 'Tom', 'column_3': 'Tom'}, {'column_1': 5, 'column_2': 'Tom', 'column_3': 'Tom'}]

补充说明

  • Polars的to_dict()方法默认(或指定as_series=False)返回的是列名对应值列表的字典结构,这和Pandas的orient='columns'效果一致,并非你需要的行级字典列表。
  • 若需手动实现(不推荐,效率低于内置方法),可通过遍历每行转换为字典:
    result = [row.to_dict() for row in df.rows(named=True)]
    

内容的提问来源于stack exchange,提问作者user22286335

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 16:42:06