Polars:如何添加带有数字的列?

2024-04-02

in pandas

df['new'] = a

where a是一个数字系列或只是一个数字。
而在polars我们可以添加一个char

df.with_column(
 [
  pl.all(),
  pl.lit('str').alias('new')
 ]
)

但如何添加数字系列或数字作为新列polars?
请注意,新的数字系列不在原始系列中df,它是一些计算的结果。


让我们从这个 DataFrame 开始:

import polars as pl
df = pl.DataFrame(
    {
        "col1": [1, 2, 3, 4, 5],
    }
)
print(df)
shape: (5, 1)
┌──────┐
│ col1 │
│ ---  │
│ i64  │
╞══════╡
│ 1    │
├╌╌╌╌╌╌┤
│ 2    │
├╌╌╌╌╌╌┤
│ 3    │
├╌╌╌╌╌╌┤
│ 4    │
├╌╌╌╌╌╌┤
│ 5    │
└──────┘

添加标量(单个值)

Use polars.lit https://pola-rs.github.io/polars/py-polars/html/reference/api/polars.lit.html#polars.lit.

my_scalar = -1
df.with_column(pl.lit(my_scalar).alias("col_scalar"))
shape: (5, 2)
┌──────┬────────────┐
│ col1 ┆ col_scalar │
│ ---  ┆ ---        │
│ i64  ┆ i32        │
╞══════╪════════════╡
│ 1    ┆ -1         │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 2    ┆ -1         │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 3    ┆ -1         │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 4    ┆ -1         │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 5    ┆ -1         │
└──────┴────────────┘

您还可以使用以下命令选择新列的数据类型dtype关键词。

df.with_column(pl.lit(my_scalar, dtype=pl.Float64).alias("col_scalar_float"))
shape: (5, 2)
┌──────┬──────────────────┐
│ col1 ┆ col_scalar_float │
│ ---  ┆ ---              │
│ i64  ┆ f64              │
╞══════╪══════════════════╡
│ 1    ┆ -1.0             │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 2    ┆ -1.0             │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 3    ┆ -1.0             │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 4    ┆ -1.0             │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 5    ┆ -1.0             │
└──────┴──────────────────┘

添加列表

要添加值列表(可能来自某些外部计算),请使用极地系列 https://pola-rs.github.io/polars/py-polars/html/reference/api/polars.Series.html#polars.Series构造函数并为 Series 构造函数提供名称。

my_list = [10, 20, 30, 40, 50]
df.with_column(pl.Series(name="col_list", values=my_list))
shape: (5, 2)
┌──────┬──────────┐
│ col1 ┆ col_list │
│ ---  ┆ ---      │
│ i64  ┆ i64      │
╞══════╪══════════╡
│ 1    ┆ 10       │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌┤
│ 2    ┆ 20       │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌┤
│ 3    ┆ 30       │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌┤
│ 4    ┆ 40       │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌┤
│ 5    ┆ 50       │
└──────┴──────────┘

您可以使用dtype如果需要,关键字可以控制新系列的数据类型。

df.with_column(pl.Series(name="col_list", values=my_list, dtype=pl.Float64))
shape: (5, 2)
┌──────┬──────────┐
│ col1 ┆ col_list │
│ ---  ┆ ---      │
│ i64  ┆ f64      │
╞══════╪══════════╡
│ 1    ┆ 10.0     │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌┤
│ 2    ┆ 20.0     │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌┤
│ 3    ┆ 30.0     │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌┤
│ 4    ┆ 40.0     │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌┤
│ 5    ┆ 50.0     │
└──────┴──────────┘

添加系列

如果您已经有一个系列,您只需提供其参考即可。

my_series = pl.Series(name="my_series_name", values=[10, 20, 30, 40, 50])
df.with_column(my_series)
shape: (5, 2)
┌──────┬────────────────┐
│ col1 ┆ my_series_name │
│ ---  ┆ ---            │
│ i64  ┆ i64            │
╞══════╪════════════════╡
│ 1    ┆ 10             │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 2    ┆ 20             │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 3    ┆ 30             │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 4    ┆ 40             │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 5    ┆ 50             │
└──────┴────────────────┘

如果您的系列还没有名称,您可以使用alias表达。

my_series_no_name = pl.Series(values=[10, 20, 30, 40, 50])
df.with_column(my_series_no_name.alias('col_no_name'))
shape: (5, 2)
┌──────┬─────────────┐
│ col1 ┆ col_no_name │
│ ---  ┆ ---         │
│ i64  ┆ i64         │
╞══════╪═════════════╡
│ 1    ┆ 10          │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 2    ┆ 20          │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 3    ┆ 30          │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 4    ┆ 40          │
├╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌┤
│ 5    ┆ 50          │
└──────┴─────────────┘
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Polars:如何添加带有数字的列? 的相关文章

  • 尽管极其懒惰,但如何在 Python 中模拟 IMAP 服务器?

    我很好奇是否有一种简单的方法来模拟 IMAP 服务器 例如imaplib模块 在Python中 without做很多工作 是否有预先存在的解决方案 理想情况下 我可以连接到现有的 IMAP 服务器 进行转储 并让模拟服务器在真实的邮箱 电子
  • 将字符串转换为带有毫秒和时区的日期时间 - Python

    我有以下 python 片段 from datetime import datetime timestamp 05 Jan 2015 17 47 59 000 0800 datetime object datetime strptime t
  • 导入错误:没有名为 _ssl 的模块

    带 Python 2 7 的 Ubuntu Maverick 我不知道如何解决以下导入错误 gt gt gt import ssl Traceback most recent call last File
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • 如何使用 Scrapy 从网站获取所有纯文本?

    我希望在 HTML 呈现后 可以从网站上看到所有文本 我正在使用 Scrapy 框架使用 Python 工作 和xpath body text 我能够获取它 但是带有 HTML 标签 而且我只想要文本 有什么解决办法吗 最简单的选择是ext
  • Spark的distinct()函数是否仅对每个分区中的不同元组进行洗牌

    据我了解 distinct 哈希分区 RDD 来识别唯一键 但它是否针对仅移动每个分区的不同元组进行了优化 想象一个具有以下分区的 RDD 1 2 2 1 4 2 2 1 3 3 5 4 5 5 5 在此 RDD 上的不同键上 所有重复键
  • 从 scikit-learn 导入 make_blobs [重复]

    这个问题在这里已经有答案了 我收到下一个警告 D Programming Python ML venv lib site packages sklearn utils deprecation py 77 DeprecationWarning
  • keras加载模型错误尝试将包含17层的权重文件加载到0层的模型中

    我目前正在使用 keras 开发 vgg16 模型 我用我的一些图层微调 vgg 模型 拟合我的模型 训练 后 我保存我的模型model save name h5 可以毫无问题地保存 但是 当我尝试使用以下命令重新加载模型时load mod
  • 在pyyaml中表示具有相同基类的不同类的实例

    我有一些单元测试集 希望将每个测试运行的结果存储为 YAML 文件以供进一步分析 YAML 格式的转储数据在几个方面满足我的需求 但测试属于不同的套装 结果有不同的父类 这是我所拥有的示例 gt gt gt rz shorthand for
  • Pandas Dataframe 中 bool 值的条件前向填充

    问题 如何转发 fill boolTruepandas 数据框中的值 如果是当天的第一个条目 True 到一天结束时 请参阅以下示例和所需的输出 Data import pandas as pd import numpy as np df
  • 当玩家触摸屏幕一侧时,如何让 pygame 发出警告?

    我使用 pygame 创建了一个游戏 当玩家触摸屏幕一侧时 我想让 pygame 给出类似 你不能触摸屏幕两侧 的错误 我尝试在互联网上搜索 但没有找到任何好的结果 我想过在屏幕外添加一个方块 当玩家触摸该方块时 它会发出警告 但这花了很长
  • Numpy 优化

    我有一个根据条件分配值的函数 我的数据集大小通常在 30 50k 范围内 我不确定这是否是使用 numpy 的正确方法 但是当数字超过 5k 时 它会变得非常慢 有没有更好的方法让它更快 import numpy as np N 5000
  • Python 3 中“map”类型的对象没有 len()

    我在使用 Python 3 时遇到问题 我得到了 Python 2 7 代码 目前我正在尝试更新它 我收到错误 类型错误 map 类型的对象没有 len 在这部分 str len seed candidates 在我像这样初始化它之前 se
  • 在Python中重置生成器对象

    我有一个由多个yield 返回的生成器对象 准备调用该生成器是相当耗时的操作 这就是为什么我想多次重复使用生成器 y FunctionWithYield for x in y print x here must be something t
  • Python:计算字典的重复值

    我有一本字典如下 dictA unit1 test1 alpha unit1 test2 beta unit2 test1 alpha unit2 test2 gamma unit3 test1 delta unit3 test2 gamm
  • 在 Pandas DataFrame Python 中添加新列[重复]

    这个问题在这里已经有答案了 例如 我在 Pandas 中有数据框 Col1 Col2 A 1 B 2 C 3 现在 如果我想再添加一个名为 Col3 的列 并且该值基于 Col2 式中 如果Col2 gt 1 则Col3为0 否则为1 所以
  • 用于运行可执行文件的python多线程进程

    我正在尝试将一个在 Windows 上运行可执行文件并管理文本输出文件的 python 脚本升级到使用多线程进程的版本 以便我可以利用多个核心 我有四个独立版本的可执行文件 每个线程都知道要访问它们 这部分工作正常 我遇到问题的地方是当它们
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • 您可以在 Python 类型注释中指定方差吗?

    你能发现下面代码中的错误吗 米皮不能 from typing import Dict Any def add items d Dict str Any gt None d foo 5 d Dict str str add items d f
  • 改变字典的哈希函数

    按照此question https stackoverflow com questions 37100390 towards understanding dictionaries 我们知道两个不同的字典 dict 1 and dict 2例

随机推荐

  • 验证 Base64 编码图像

    我正在构建一个应用程序 允许用户POSTHTML5 画布数据随后以 Base64 进行编码并显示给所有用户 我正在考虑将数据解析为实际的 png 文件并存储在服务器上 但 base64 路由允许我将图像存储在数据库中并最大限度地减少请求 图
  • SQL Server:根据条件查找日期与当前日期最接近的记录

    我正在使用 SQL Server 2012 并尝试创建一个将根据以下条件返回记录的视图 查询需要根据日期检索最适用的记录 对于内部日期范围内的日期 将返回最接近 CurrentDate 的记录 对于内部日期范围之外的日期 将返回最接近 Cu
  • 为什么在 shellcode 中使用 Push/Pop 而不是 Mov 将数字放入寄存器中?

    我有一些来自 shell 代码有效负载的示例代码 显示了 for 循环并使用 push pop 来设置计数器 push 9 pop ecx 为什么不能直接使用mov呢 mov ecx 9 是的 通常你应该总是使用mov ecx 9出于性能原
  • LinkedAuthorizationFailed 在 PowerShell 中意味着什么?

    我正在尝试使用 PowerShell 在 cosmos db 中添加虚拟网络规则 VNETS 存在于不同的租户中 我对存储帐户做了同样的事情 效果很好 我收到以下错误 有人可以给我一些关于我哪里出错的指示吗 是否可以在 Cosmos 数据库
  • eclipse:调试以编程方式启动的进程

    我正在通过 Eclipse 中的另一个 java 进程以编程方式执行 java 进程 Process process Runtime getRuntime exec command envp dir 有没有办法告诉eclipse调试子进程
  • E2009 不兼容的类型:“参数列表不同”

    我收到以下错误 E2009 不兼容的类型 参数列表不同 然而我不同意 看看定义我看不出有什么区别 这是记录定义 type TFastDiv record private DivideFunction function const Buffe
  • 哪种 TypeScript 配置会产生最接近 Node.js 16 功能的输出?

    Node js 16 最近发布 带来了对 ES2021 的更新支持以及对 ES 模块的稳定支持 如何配置 TypeScript 来输出利用所有这些新功能的 JavaScript 代码 从 Node js 开始16 0 0 100 支持ES2
  • 顺利改变CSS

    我的情况如下 我有以下功能 var showHideMemberContent function if isHidden false showHideMemberContent text Member Content main css he
  • 对 Volatile.Read/Write 的理解

    我试图理解 C Volatile 类 正如我读到的 The Volatile Write方法强制写入位置中的值 到呼叫点 此外 任何较早的程序订单 加载和存储必须在调用 Volatile Write 之前发生 The Volatile Re
  • 扩展类型转换器

    DateTimeConverter 类提供 DateTime 和字符串之间的转换 我还想支持 DateTime 和 double 之间的转换 根据 MSDN 我可以扩展 DateTimeConverter 类来执行此操作 请参阅MSDN 日
  • Visual Studio 2015 重置 Web 项目以使用 IIS Express

    我在 VS2015 中有一个 Web 项目 我想在本地 IIS 上运行 我在项目属性中进行了设置 它工作正常 但每当我关闭并重新打开 Visual Studio 时 它总是将项目重置为使用 IIS Express EDIT 当我关闭并重新打
  • opencv - 视频看起来不错,但帧旋转了 90 度

    我们将视频保存在移动客户端上并将其发送到服务器 在服务器上 我使用以下代码来保存帧 gt import skvideo io import cv2 haar home ubuntu opencv data haarcascades haar
  • dapper -multi-mapping:扁平 sql 返回嵌套对象

    我有一家包含地址对象的公司 SQL 返回是平坦的 我试图让 Query 加载所有对象 cnn Query
  • 运行 BLAST (bl2seq) 而不创建序列文件

    我有一个执行 BLAST 查询 bl2seq 的脚本 该脚本的工作原理如下 获取序列a 序列b 将序列a写入文件 将序列b写入文件b 运行命令 bl2seq i filea j fileb nblastn 从 STDOUT 获取输出 解析
  • 为什么使用 ASP.NET 从另一个页面返回后 Page_Load 没有触发 - 因此是史诗般的尴尬:)

    假设我在同一个 ASP NET C 网站上有两个页面 Page1 aspx 在 Page Load 事件中执行操作 我使用菜单导航到 Page2 aspx Page2 aspx 然后做了一些事情响应 重定向返回Page1 aspx Page
  • 在类构造函数中完成类注册后,不调用类构造函数

    我正在编写一个简单的依赖注入 控制反转系统 基于 TDictionary 保存抽象类引用及其各自的实现类 我的目标是 避免按类型直接实例化 显然 将类单元包含在 dpr 中应该足以使其注册并可通过 di ioc 系统进行选择和实例化 声明具
  • Java TreeMap 自定义比较器奇怪的行为

    我正在尝试创建一个Map使用排序键 首先按字母顺序排序 最后按数字排序 为此 我正在使用TreeMap与定制Comparator public static Comparator
  • 将嵌套 html 转换为 bbCode 引用标签

    我正在尝试转换以下html div class bbQuote div class quoteAuthor Joe Block div div class quoteContent This is the first message br
  • 围绕位图调整画布大小?

    如下图所示 我将在以下示例中使用它 目前尺寸未改变96 x 71 假设我想调整画布大小115 x 80 结果图像应该是 最后 如果我将其调整为比原始画布更小的尺寸 例如45 x 45输出将如下所示 这是我到目前为止所尝试过的 procedu
  • Polars:如何添加带有数字的列?

    in pandas df new a where a是一个数字系列或只是一个数字 而在polars我们可以添加一个char df with column pl all pl lit str alias new 但如何添加数字系列或数字作为新