在 pandas 的查询方法中使用复杂的操作
Using complex operations in query method of pandas
假设我有以下代码,
import pandas as pd
dat = pd.DataFrame({'col1' : [1,2,3,4,5,6,7,8,9,10], 'col2' : ['A', 'X', 'D', 'Y', 'A', 'D', 'Y', 'X', 'D', 'A']})
dat1 = pd.DataFrame({'col1' : [1,2,3,4,5,6,7,8,9,10], 'col2' : ['A', 'X', 'D', 'Y', 'A', 'D', 'Y', 'X', 'D', 'A']})
number = dat['col1'].values[dat.shape[0] - 3]
dat1.query("col1 == @number")
现在我不想在最后一行使用 @number
,而是想在 query
方法中传递整个计算 dat['col1'].values[dat.shape[0] - 3]
。
有什么办法可以实现吗?
假设我有以下代码,
import pandas as pd
dat = pd.DataFrame({'col1' : [1,2,3,4,5,6,7,8,9,10], 'col2' : ['A', 'X', 'D', 'Y', 'A', 'D', 'Y', 'X', 'D', 'A']})
dat1 = pd.DataFrame({'col1' : [1,2,3,4,5,6,7,8,9,10], 'col2' : ['A', 'X', 'D', 'Y', 'A', 'D', 'Y', 'X', 'D', 'A']})
number = dat['col1'].values[dat.shape[0] - 3]
dat1.query("col1 == @number")
现在我不想在最后一行使用 @number
,而是想在 query
方法中传递整个计算 dat['col1'].values[dat.shape[0] - 3]
。
有什么办法可以实现吗?