为了账号安全,请及时绑定邮箱和手机立即绑定

如何将不带单引号/双引号的字符串传递给 Python 循环中的另一个函数

如何将不带单引号/双引号的字符串传递给 Python 循环中的另一个函数

一只萌萌小番薯 2023-03-22 10:41:44
我从决策树中提取了 1000 条规则并保存在数据框中。以下是示例规则(age > 25) & (Tenure < 48)现在我想检查 pandas 数据框 (Data_rules) 中有多少观察值遵循每个规则。基本上我想在应用上述规则后检查数据帧的长度。下面是我写的代码for i in Data_rules.index:      temp = len(train[Data_rules['Rules'][i]])      output.append(temp)这段代码向我抛出一个“关键错误”,因为 Data_rules['Rules'][i] 将以字符串形式给出每个规则,并以单引号开头,例如 '(age > 25) & (Tenure < 48)' 但我们需要通过不带引号的规则来训练数据集。谁能帮我解决这个问题。
查看完整描述

1 回答

?
开满天机

TA贡献1786条经验 获得超12个赞

这正是DataFrame.query用途,这里有一个例子:

import pandas as pd


df = pd.DataFrame({"age": [10, 15, 20, 25, 30, 35], "Tenure": [1, 1, 1, 1, 50, 47]})

result = df.query("(age > 25) & (Tenure < 48)")


print(result)

输出:


   age  Tenure

5   35      47


查看完整回答
反对 回复 2023-03-22
  • 1 回答
  • 0 关注
  • 66 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信