2016-11-30 59 views

回答

3

我想你需要DataFrame.gt

print (df.gt(s, axis=0)) 

样品:

df = pd.DataFrame({'A':[1,2,3], 
        'B':[4,5,6], 
        'C':[7,8,9], 
        'D':[1,3,5], 
        'E':[5,3,6], 
        'F':[7,4,3]}) 

print (df) 
    A B C D E F 
0 1 4 7 1 5 7 
1 2 5 8 3 3 4 
2 3 6 9 5 6 3 

s = pd.Series([1,2,3]) 
print (s) 
0 1 
1 2 
2 3 
dtype: int64 

print (df.gt(s, axis=0)) 
     A  B  C  D  E  F 
0 False True True False True True 
1 False True True True True True 
2 False True True True True False 

如果需要另一个函数比较:

+0

这似乎不错。双重比较可能吗?像's Donbeo

+0

嗯,这是更复杂的,但认为这可以工作'print((df.gt(s,axis = 0))|(df.lt(s1,axis = 0)))'' – jezrael