2014-11-26 19 views
8

ho un frame di dati panda voglio contare quante volte un numero appare in una colonna per ogni colonnaoccorrenze conteggio del numero di colonna in data frame panda

 a b c d e 
0 2 3 1 5 4 
1 1 3 2 5 4 
2 1 3 2 5 4 
3 2 4 1 5 3 
4 2 4 1 5 3 

Questo è il mio codice che non funziona

def equalsOne(x): 
    x[x.columns == 1].sum() 

df1.apply(equalOne(), axis = 1) 

Ecco l'output desiderato

a 2 
b 0 
c 3 
d 0 
e 0 

risposta

14

Si può fare:

(df==1).sum() 

df==1 dà:

 a  b  c  d  e 
0 False False True False False 
1 True False False False False 
2 True False False False False 
3 False False True False False 
4 False False True False False 

e la sum() tratta False come 0 e True come 1.

4

Questo dovrebbe fare il trucco

df1[df1 == 1].count() 
Problemi correlati