Python 如何计算一个元素在数据帧的两列中出现的次数?

Python 如何计算一个元素在数据帧的两列中出现的次数?,python,pandas,matplotlib,Python,Pandas,Matplotlib,我有一个带有列的数据框:“颜色”、“大小”、“形状”和“正在出售”来描述各种水果。“正在出售”列包含描述项目是否正在出售的布尔元素 我最终想要创建一个图,显示每种颜色出售的水果数量。 我可以通过这两行分别获得所有独特颜色的列表以及属于每个颜色类别的水果数量: print(pd.unique(df["Color"])) print(df["Color"].value_counts()) 但是,我需要添加限定符“beingsall=true”,以便第二行不包括未出售的水果。最简单的方法是什么?您可

我有一个带有列的数据框:“颜色”、“大小”、“形状”和“正在出售”来描述各种水果。“正在出售”列包含描述项目是否正在出售的布尔元素

我最终想要创建一个图,显示每种颜色出售的水果数量。 我可以通过这两行分别获得所有独特颜色的列表以及属于每个颜色类别的水果数量:

print(pd.unique(df["Color"]))
print(df["Color"].value_counts())

但是,我需要添加限定符“beingsall=true”,以便第二行不包括未出售的水果。最简单的方法是什么?

您可以使用以下命令访问仅与“正在出售”对应的数据帧

df[df["Being Sold"]] # or df[df["Being Sold"]=="true"] # if strings 
由于
“正在出售”
是布尔列,因此不需要编写
df[df[“正在出售”]==True]
。尽管它也会起作用

然后,您可以简单地执行任何您想要的操作。例如

df[df["Being Sold"]]["Color"].value_counts()