在Python函数中使用Pandas DF时出现 name not defined错误



我想用df:

创建一个函数
import pandas as pd
data = {"a": [1,2,3],
"b": [5,6,7]}
df=pd.DataFrame(data)
df
a   b
0   1   5
1   2   6
2   3   7

函数是这样的:

def function(x):
y = df.query("a > x")
return y
y=function(1)
print(y)

当我调用函数时,我得到x未定义的错误?

这里有什么问题?

当您想要与df.query一起使用变量时,请使用@

您的function中缺少@

这样做:

In [458]: def function(x):
...:     y = df.query("a > @x")
...:     return y
...: 
In [460]: y=function(1)
...: print(y)
a  b
1  2  6
2  3  7

相关内容

最新更新