欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > Polars的Selectors

Polars的Selectors

2026/5/27 16:40:55 来源:https://blog.csdn.net/weixin_32759777/article/details/142724759  浏览:    关键词:Polars的Selectors

Selectors

        • 内容
        • 使用例子

在 Polars 中,选择器用于在 DataFrame 或 LazyFrame 中选择和操作数据。它们提供了类似于 SQL 选择器的操作方式,使得代码更加简洁和易读。以下是选择器部分的内容及使用示例:

内容
  • 导入 (Import)
    • col(): 从 DataFrame 或 LazyFrame 中选择一列。
    • lit(): 创建一个字面量值,可以在表达式中使用。
  • 集合操作 (Set Operations)
    • union(): 合并两个 DataFrame 或 LazyFrame,并移除重复行。
    • intersect(): 返回两个 DataFrame 或 LazyFrame 中的共同行。
    • except_(): 返回第一个 DataFrame 或 LazyFrame 中存在,而第二个中不存在的行。
  • 函数 (Functions)
    • when(): 用于条件表达式。
    • then(): 如果 when() 中的条件为真,则返回的值。
    • otherwise(): 如果 when() 中的条件为假,则返回的值。
使用例子
import polars as pl
# 创建一个DataFrame
df = pl.DataFrame({"姓名": ["Alice", "Bob", "Charlie"],"年龄": [25, 30, 35],"身高": [165, 175, 180]
})
# 使用col()选择器选择一列
选择的列 = df.select(pl.col("姓名"))
# 使用lit()选择器创建一个字面量
字面量 = df.with_column(pl.lit("常量").alias("新列"))
# 使用union()集合操作合并两个DataFrame
df1 = pl.DataFrame({"姓名": ["Alice", "Bob"]})
df2 = pl.DataFrame({"姓名": ["Charlie", "David"]})
合并的DataFrame = df1.union(df2)
# 使用intersect()集合操作找出两个DataFrame的交集
交集的DataFrame = df1.intersect(df2)
# 使用except_()集合操作找出df1中存在而df2中不存在的行
差集的DataFrame = df1.except_(df2)
# 使用when(), then(), otherwise()函数进行条件表达式
条件表达式 = pl.when(pl.col("年龄") > 30).then("老年").otherwise("年轻")
带有条件表达式的DataFrame = df.with_column(条件表达式.alias("年龄分类"))
# 输出结果
print(f"选择的列: {选择的列}")
print(f"字面量: {字面量}")
print(f"合并的DataFrame: {合并的DataFrame}")
print(f"交集的DataFrame: {交集的DataFrame}")
print(f"差集的DataFrame: {差集的DataFrame}")
print(f"带有条件表达式的DataFrame: {带有条件表达式的DataFrame}")

这些示例展示了如何使用选择器来选择列、创建字面量、执行集合操作以及使用条件表达式。通过这些操作,可以有效地对数据进行选择和转换,从而进行更复杂的数据分析。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词