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

Polars中是否有等价于Pandas dtypes的命令?如何获取列名与类型?

在Polars里,df.dtypes确实只会返回数据类型的列表,要同时拿到列名和对应类型,有几种简单实用的方法:

方法1:直接用df.schema

这是最直接的方式,df.schema会返回一个列名到数据类型的字典,一眼就能看到对应关系:

import polars as pl

# 示例DataFrame
df = pl.DataFrame({
    "username": ["john_doe", "jane_smith"],
    "signup_date": pl.date_range(start="2023-01-01", end="2023-01-02", interval="1d"),
    "score": [85.5, 92.0]
})

# 打印列名与类型的字典
print(df.schema)

输出示例:

{'username': String, 'signup_date': Date, 'score': Float64}

方法2:用zip配对列名和类型

如果需要逐行输出或者自定义展示格式,可以把df.columns(列名列表)和df.dtypes(类型列表)用zip配对遍历:

# 遍历并打印每列的名称和类型
for col, dtype in zip(df.columns, df.dtypes):
    print(f"列名: {col}, 数据类型: {dtype}")

输出示例:

列名: username, 数据类型: String
列名: signup_date, 数据类型: Date
列名: score, 数据类型: Float64

方法3:转换成DataFrame格式查看

如果想以表格形式更直观地查看,可以把配对后的结果转成一个新的Polars DataFrame:

type_df = pl.DataFrame({
    "列名": df.columns,
    "数据类型": df.dtypes
})

print(type_df)

输出示例:

shape: (3, 2)
┌─────────────┬─────────────┐
│ 列名         ┆ 数据类型     │
│ ---         ┆ ---         │
│ str         ┆ dtype       │
╞═════════════╪═════════════╡
│ username    ┆ String      │
│ signup_date ┆ Date        │
│ score       ┆ Float64     │
└─────────────┴─────────────┘

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 09:50:34