python - 如何计算数据框两列中元素的出现次数?
问题描述
我有一个包含列的数据框:“颜色”、“大小”、“形状”和“正在出售”来描述各种水果。“正在出售”列包含描述项目是否正在出售的布尔元素。
我最终想创建一个图,显示每种颜色的水果销售数量。我可以分别用这两行获得所有独特颜色的列表以及属于每个颜色类别的水果数量:
print(pd.unique(df["Color"]))
print(df["Color"].value_counts())
但是,我需要添加限定符“Being Sold = true”,以便第二行不包括未出售的水果。这样做最简单的方法是什么?
解决方案
您可以使用以下命令访问仅对应于"Being Sold"
=的数据框True
df[df["Being Sold"]] # or df[df["Being Sold"]=="true"] # if strings
由于"Being Sold"
是布尔列,因此您无需编写df[df["Being Sold"]==True]
. 虽然它也会起作用。
然后,您可以简单地执行您想要的任何操作。例如。
df[df["Being Sold"]]["Color"].value_counts()
推荐阅读
- html - 如何在 HTML 中显示对象的变量名称?
- python - 用 Groupby 总结一些行和一些列
- selenium - 在 Java 中使用 Cucumber,我可以在一个项目中使用 2 个 ServiceHooks 类吗?
- python-2.7 - 无法在 python 2.7 中安装 cv2
- swift - SwiftUI 表格自定义滑动?
- json - VB.NET 无法正确发送 POST 请求
- python - 使用python生成一个显示朋友数量的字典
- scala - 如何使用 Spark Windowing 从数据框中的当前行中查找下一个出现的项目?
- node.js - 为什么生成html文件时会出错?
- angular - 如何从浏览器获取内部 Web 应用程序的登录用户 ID?