我想用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