matplotlib 如何在数据框的列中只计数'Yes'实体?

dojqjjoe  于 2023-08-06  发布在  其他
关注(0)|答案(2)|浏览(88)

在Input[96]中,我尝试了很多方法,但什么也做不了,总是得到'yes'和'no'值
输入:

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

字符串
输出量:

No     45
Yes    38
Name: fruity, dtype: int64

zsbz8rwp

zsbz8rwp1#

**编辑:**因为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 ) )

lc8prwob

lc8prwob2#

如果我尝试将其与groupby一起使用,则此答案不起作用(见下文)- Gives KeyError:“是”:
2019 - 05 - 22 00:00:00:00 ['是','否','是','否','是','否','是','否']})#z_copy print(z_copy.groupby('deliveryzipcode')['orderreturned'].value_counts()['是'])

相关问题