python - 对结果进行平均计算的列条件计数
问题描述
我有一个具有这种结构的数据框
v1|v2|v3|
2| 3| 4|
| 5| 4|
5| 1| 4|
我想计算每列的所有 4 和 5,然后除以该列的所有条目数。之后我想计算所有这些值的平均值。在这种情况下(1/2+1/3+3/3)/3=0.611
sum over x(Count Vx if 4 or 5)/Count Vx(without missings)/x
到目前为止我尝试过的是:)
df[df > 4 and df > 5].count(
但我已经在这里遇到了很多错误。谁能走上正轨?
解决方案
你可以试试:
df.isin([4,5]).sum().div(df.count()).mean()
输出:
0.611111111111111
推荐阅读
- python - Python Click:如何为全局上下文更改 `info_name` 的值
- python - 从 csv 文件中读取特定列
- swift - SwiftUI - 无法在 Firebase 的 observeSingleEvent 内分配变量。返回零
- nuget - 依赖项中的 Nuget 包冲突
- javascript - 解析(输入)为 JSON 字符串
- ruby-on-rails - 使用基于 API 密钥的身份验证时使用的正确标头是什么
- android - mvvm 使用 dagger2 和 ViewModelFactory,不理解默认注入
- cython - 如果有同名的属性,Cython 不能引用 cdef 类中的声明类型?
- docker - Docker BuildKit 是否被认为是稳定的/生产友好的?
- javascript - 在输入字段下方使用带有自定义消息的 javascript 进行电子邮件验证