метод count в python не может игнорировать пустую строку - PullRequest
0 голосов
/ 31 августа 2018
import pandas as pd
df = pd.DataFrame({'x':[1,2,1,2,1,3,2],'y':[34,23,23,65,45,12,28],'z':['a','b','a','','a','c','b']})
df.groupby('x').z.count().reset_index()
  x  z
0  1  3
1  2  3
2  3  1

Но это то, что я не хочу, пустая строка не должна быть в счетчике, поэтому я хочу

  x  z
0  1  3
1  2  2
2  3  1
что мне делать?

Ответы [ 2 ]

0 голосов
/ 31 августа 2018

Использование replace:

df.replace({'z':''},np.nan).groupby('x').z.count().reset_index()
    x   z
0   1   3
1   2   2
2   3   1

Или

df.replace({'z':''},np.nan).groupby('x',as_index=False).z.count()
0 голосов
/ 31 августа 2018

в python пустая строка не считается нулевой, вы можете заменить ее на нулевую и сделать то же самое.

df['z']=df['z'].replace({'':np.NAN})
df.groupby('x').z.count().reset_index()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...