"Pandas Python中比较DataFrame列与单个值"

2024-10-04 03:22:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用输入的SQL查询在python上构建了一个数据帧。在此之后,我命名了我的列,并确保使用NaN值隔离列是很好的做法:

cursor.execute(raw_input("Enter your SQL query: "))
records = cursor.fetchall()
import pandas as pd
dframesql = pd.DataFrame(records)
dframesql.columns = [i[0] for i in cursor.description]

当我想将数据中的行数与数据框中的总行数进行比较时,问题就出现了:

^{pr2}$

当我试图比较dframedesc和dframelines时,我得到了一个错误

nancol = []
for line in dframedesc:
    if dframedesc < dframelines:
        nancol.append(line)

ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

提前谢谢!在


Tags: 数据indataframeforsqllinenan命名
1条回答
网友
1楼 · 发布于 2024-10-04 03:22:38

如果你想用forloop来做,可以循环使用df的索引:

nancol = []
for index in dframedesc.index:
    if dframedesc.loc[index,'a_column'] < dframelines:
        nancol.append(dframedesc.loc[index,:])

但为什么不只是:

^{pr2}$

相关问题 更多 >