python - 比较两个总和的Dataframes sql问题
问题描述
我想比较我的 sql 数据库中的 2 个总和。我收到此错误。ValueError:Series 的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。
import pandas as pd
import cx_Oracle
from pprint import pprint
connection = cx_Oracle.connect("student_ps", "oracle", "xx.xx.xx.xx.x/oracle")
query="""SELECT nume_client, suma_solicitata, suma_depozit, fidelitate
FROM t_clienti_leasing where varsta>30 and suma_solicitata>10000"""
df = pd.read_sql(query, con=connection, params=None)
pprint(df)
connection.close()
if(df['SUMA_DEPOZIT'] >= df['SUMA_SOLICITATA']):
df["FIDELITATE"]=="5"
print(df)
解决方案
这是因为您不能在 if 语句中使用两个系列的比较。原因是比较两个系列会产生一个新的布尔系列,指示满足条件的索引。
您应该像这样使用 .loc :
df.loc[df['SUMA_DEPOZIT'] >= df['SUMA_SOLICITATA'],"FIDELITATE"] = 5
希望对你有所帮助!
推荐阅读
- javascript - 创建后如何将值保存到环境变量中?
- azure - 将 Base-64 pfx 转换为可用的 pkcs#12
- flutter - 如何在 Flutter 中使用带有 arrayContains 列表的 where 查询
- css - 如何通过 div 标签要求在 R Shiny 中输入?
- python-3.x - 更新 SQLite 不会改变 python
- javascript - 如何用指定的文本替换字符串中的字符?
- actions-on-google - 从 Actions SDK 2 迁移到 3:不能在不是使用自定义类别创建的项目中指定自定义操作
- c# - Selenium Web 驱动程序在 uwp winui 3 桌面应用程序中调用时出错
- amazon-web-services - 如何在 python 中为 AWS QLDB 搜索查询结果启用分页?
- excel - 如何更快地将数据复制并粘贴到空列中?