Python 当我添加另一层按位操作时,我的过滤器停止工作 数据可在本文件中找到
我毫不怀疑这个解决方案非常简单,但我被难倒了。将以下筛选器应用于数据帧时:Python 当我添加另一层按位操作时,我的过滤器停止工作 数据可在本文件中找到,python,pandas,dataframe,filter,bitwise-operators,Python,Pandas,Dataframe,Filter,Bitwise Operators,我毫不怀疑这个解决方案非常简单,但我被难倒了。将以下筛选器应用于数据帧时: def过滤器(g): return((len(g)>=9)|(len(g)=9&g['Trade Value(US$)')。max()按位比较运算符&和比其他运算符绑定得更紧密 将比较用括号括起来 def filt(g): case1 = (len(g) >= 9) & (g['Trade Value (US$)'].max() < 2500) case2 = (len(g) <
def过滤器(g):
return((len(g)>=9)|(len(g)=9&g['Trade Value(US$)')。max()按位比较运算符&
和
比其他运算符绑定得更紧密
将比较用括号括起来
def filt(g):
case1 = (len(g) >= 9) & (g['Trade Value (US$)'].max() < 2500)
case2 = (len(g) <= 3) & (g['Trade Value (US$)'].min() > 250000)
return case1 | case2
df_filt = df.groupby(['Commodity','Partner']).filter(filt)
df_filt.groupby(['Commodity','Partner'])[['Trade Value (US$)']].aggregate([len,sum])
def过滤器(g):
案例1=(len(g)>=9)和(g[‘贸易价值(美元)’)].max()<2500)
案例2=(len(g)250000)
返回案例1 |案例2
df_filt=df.groupby(['Commodity','Partner'])。过滤器(filt)
df_filt.groupby(['Commodity','Partner'])[[['Trade Value(US$)']]合计([len,sum])
不要使用&
或|
而是使用和和或。它们是完全不同的。@venky_uuu-在这种情况下,和和或的位运算符是正确的。