2016-11-30 110 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