使用 pandas 中的映射逻辑替换列值(实现函数的问题)

2024-01-29

我有一个数据框如下。我想要的是生成另一列(freq) 其中行将根据以下逻辑具有值:

  • If Mode列值以数字开头m,然后填写数字n in the freq column.

    - m: 1, n: 12
    - m: 6, n: 4
    - m: 7, n: 2
    - m: 8, n: 1
    

数据框

    Mode
0   602
1   603
2   700
3   100
4   100
5   100
6   802
7   100
8   100
9   100
10  100

这是我尝试实现的逻辑。但不知怎的,它似乎不起作用。即使您可以建议一些替代解决方案,而不使用我的代码,那也可以。

def check_mode(Mode):
    freq = ''
    if (Mode.str.startswith('8')).any(): 
        freq = 1
    elif (Mode.startswith("7")).all():  
        freq = 2
    elif (Mode.startswith("6")).any():  
        freq = 4
    elif (Mode.startswith("1")).any(): 
        freq = 12
    return freq

df['freq']=check_mode(df_ia['Mode'].values)

一些观察

如果我使用:

if (Mode.str.startswith('8')).any():

我收到错误:

AttributeError: 'numpy.ndarray' object has no attribute 'str'

如果我使用:

if (Mode.startswith('8')).any():

我收到:

AttributeError: 'numpy.ndarray' object has no attribute 'startswith'

任何帮助都感激不尽。谢谢。


这就是你所追求的吗?

打印(df1)

    Mode
0    602
1    603
2    700
3    100
4    100
5    100
6    802
7    100
8    100
9    100
10   100



 c=[df1['Mode'].astype(str).str.startswith('8'),df1['Mode'].astype(str).str.startswith('7'),df1['Mode'].astype(str).str.startswith('6'),df1['Mode'].astype(str).str.startswith('1')]
 ch=[1,2,4,12]
 df1['newcol']=np.select(c, ch,0)

outcome

   Mode  newcol
0    602       4
1    603       4
2    700       2
3    100      12
4    100      12
5    100      12
6    802       1
7    100      12
8    100      12
9    100      12
10   100      12
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 pandas 中的映射逻辑替换列值(实现函数的问题) 的相关文章

随机推荐

  • 如何在python 2.7.6中导入_ssl?

    我的http服务器基于带有Python 2 7 6的BaseHTTPServer 现在我希望它支持ssl传输 即所谓的https 我已经安装了 pyOpenSSL 并重新编译了带有 ssl 支持的 python 源代码 当我尝试时它确实有效
  • 在 DynamoDB 中,如何使用 Java 将元素附加到列表字段

    我在 DynamoDB 中有一条记录 其中包含一个名为 imageData 的字段 该字段是一个项目列表 每个项目都是一个字典 包含键值对的映射 如何将新项目追加到以下记录中的列表中 ssid abcd imageData I tried
  • 结构体数组成员的默认值[重复]

    这个问题在这里已经有答案了 可能的重复 在 C 类中初始化数组和可修改左值问题 https stackoverflow com questions 6647038 intitialzing an array in a c class and
  • 如何合并来自不同输入值的数组?

    有许多具有相同名称和相同类别但具有不同值的文本字段 每个输入都有 1 个按钮 我通过单击每个特定按钮来获取每个字段的值 与 JavaScript 一起使用 我可以将该值放入数组中 但数组不会合并 如果我单击第一个按钮 特定输入字段值将放入数
  • 在 SQL 事件探查器中显示行计数

    是否可以在 SQL Server Profiler 中显示 行计数 列 例如 有 CPU 和 Duration 列 但它可以显示查询返回多少行吗 使用 RowCounts 列怎么样
  • Python 相当于 ruby​​ 的 StringScanner?

    是否有与 ruby 等效的 python 类StringScanner 类 http ruby doc org core classes StringScanner html 我可以将一些东西组合在一起 但如果这已经存在 我不想重新发明轮子
  • Iron 路由器身份验证控制器

    我想知道是否有人可以演示如何在路由器控制器类上使用全局 之前 操作来处理用户身份验证并根据结果显示适当的路由 模板 我的用例是让 AppController 充当身份验证防火墙 并在用户注销时阻止任何子控制器操作 例如 Create a p
  • PIG 中的 GROUP 和 COGROUP 有什么区别?

    我知道 Group 不能处理多个元组 因此我们在 PIG 中有 COGROUP 然而 今天检查时 GROUP 命令对我有用 我正在使用 PIG 0 12 0 我的命令和输出如下 grunt gt grpvar GROUP C by 2 B
  • 找不到有角度的日期管道

    我想在 HTML 中使用 DatePipe timeslot date 但我得到了错误 error NG8004 No pipe found with name date 我的 app module ts 导入公共模块 import Com
  • 无法添加配置转换

    I have 创建了构建配置 http www tomot de en us article 5 asp net how to use web config transforms to replace appsettings and con
  • Scala 中更好的字符串格式

    由于有太多的争论 String format很容易变得太混乱 有没有更强大的方法来格式化字符串 就像这样 This is number string format number gt 1 或者由于类型问题这是不可能的 format我认为需要
  • 在 SQL 中,如何生成 5!56 的每种可能的唯一组合?

    我有一个表 元素 其中有一列 数字 类型为 SMALLINT 其中包含数字 1 到 56 如何使用 SQL 语句生成从 1 到 56 的每种可能组合的 5 个数字的唯一集合 在 APL 编程语言 中 一个简单的二元函数 5 56 就可以解决
  • 有什么方法可以跳过 php 中包含文件的致命错误吗?

    如果我将一个文件包含到 php ini 中如果该 php 中有任何致命错误 那么有什么方法可以跳过该错误 我需要包含此 somefile php 文件 它可能会返回致命错误 对于某些主机 我想为那些主机跳过这个文件 请给我建议 有了这个 您
  • JAX-RS 中日期的 @DefaultValue:now() 和 MAX

    我有一个查询参数如下 GET public Response myFunction QueryParam start final LocalDate start QueryParam end final LocalDate end 为此 我
  • 如何在 Kafka 流中创建一个以 HashMap 作为值的状态存储?

    我需要创建一个状态存储 其中 String 键 HashMap 作为值 我尝试了以下两种方法 First method StateStoreSupplier avgStoreNew Stores create AvgsNew withKey
  • 选项卡面板可在移动视图中滑动吗?

    我有一个选项卡式菜单 我想要选项卡式菜单 ul class tabs 可在移动视图中滑动 EDIT 我找到了一个关于使用的片段Slick JS 我从来不知道这个JS 但我希望它应用这个codepen https codepen io gbh
  • Angular [ngForOf] 用法是什么

    我正在处理的一个项目有下面的代码 你能告诉我它的作用吗 我知道关于 ngFor and ngIf 但是这些是什么 ngForOf topicdata and ngFor let topic 我可以以更好的方式简化下面的代码吗
  • Kubernetes:如何获取节点的磁盘/CPU指标

    在不使用 Heapster 的情况下 有没有办法收集有关 Kubernetes 集群中节点的 CPU 或磁盘等指标 Heapster 首先是如何收集这些指标的 Kubernetes监控在文档中有详细介绍here http kubernete
  • WS-I Reliable Secure Profile 的 Javascript 实现

    我正在使用 NET 4服务器端实现 http msdn microsoft com en us library ee818238 aspx of 可靠的安全配置文件 http www ws i org deliverables workin
  • 使用 pandas 中的映射逻辑替换列值(实现函数的问题)

    我有一个数据框如下 我想要的是生成另一列 freq 其中行将根据以下逻辑具有值 If Mode列值以数字开头m 然后填写数字n in the freq column m 1 n 12 m 6 n 4 m 7 n 2 m 8 n 1 数据框