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

使用select从Polars DataFrame选单列会得到DataFrame吗?如何获取Series?

Polars中select单列返回类型及获取Series的方法

1. select单列的返回结果类型

是的,用select()方法选取单列时,返回的仍然是DataFrame——从你提供的输出能看到shape: (3, 1),说明这是一个3行1列的DataFrame,而非Series。

2. 获取Series类型结果的几种常用方法

方法一:直接索引列名

用类似字典的索引方式直接取列,返回的就是Series:

import polars as pl
df = pl.DataFrame(
    {
        "A": [1, 2, 3],
        "B": [6, 7, 8],
        "C": ["a", "b", "c"],
    }
)
series_a = df["A"]
print(series_a)

输出:

shape: (3,)
Series: 'A' [i64]
[
        1
        2
        3
]

方法二:调用get_column()方法

使用DataFrame的get_column()方法传入列名,直接获取Series:

series_a = df.get_column("A")
print(series_a)

输出和方法一完全一致。

方法三:将单列DataFrame转为Series

如果已经通过select()得到了单列DataFrame,调用to_series()方法就能转换为Series:

single_col_df = df.select("A")
series_a = single_col_df.to_series()
print(series_a)

输出同上。

方法四:结合表达式语法(适合复杂操作场景)

如果需要先对列做表达式处理(比如过滤、转换)再获取Series,可以这么写:

series_a = df.select(pl.col("A")).to_series()

这种方式在需要对列做预处理时更灵活。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 20:22:39