Как я могу считать только объекты «Да» в моем столбце данных? - PullRequest
0 голосов
/ 15 февраля 2020

На входе [96] Я пробовал много вещей, но ничего не мог сделать, всегда получая и «да», и «нет значений»

Вход:

y = (z_copy['fruity']) .value_counts()
print(y)

Выход:

No     45
Yes    38
Name: fruity, dtype: int64

1 Ответ

0 голосов
/ 15 февраля 2020

РЕДАКТИРОВАТЬ: Поскольку value_counts() возвращает Series, поэтому вы можете использовать ['Yes']

print( z_copy['fruity'].value_counts()['Yes'] )

.

import pandas as pd

z_copy = pd.DataFrame({'fruity': ['Yes', 'No', 'Yes', 'No', 'No']})

print( z_copy['fruity'].value_counts()['Yes'] )

Старая версия: Вы можете получить выбранные строки и использовать len()

import pandas as pd

z_copy = pd.DataFrame({'fruity': ['Yes', 'No', 'Yes', 'No', 'No']})

filter = (z_copy['fruity'] == 'Yes')
selected = z_copy[filter]

print( len( selected ) )

#print( len( z_copy[df['fruity'] == 'Yes'] ) )

В конце концов вы можете использовать sum(), потому что True/False преобразуется в 1/0

filter = (z_copy['fruity'] == 'Yes')

print( sum( filter ) )
...