r - 如何在R中使用if语句有2个条件
问题描述
我有这个数据框
我想在购买为1时找到测试组(暴露)的总数
for (i in df$exposed) {
if (i == "Test Group (Exposed)" && df$purchased == 1){
print(i)
}
}
我不知道该怎么做...
解决方案
我们通常sum
用来计算事物——这在很多编程语言中都是正确的。TRUE 为 1,FALSE 为 0,所以 TRUE/FALSE 值的总和就是真数。在你的情况下:
sum(df$exposed == "Test Group (Exposed)" & df$purchased == 1)
没有for
循环或print
需要。
同样,您可以使用mean()
获取 TRUE 值的百分比。
如果您想为组执行此操作(例如,获取所有exposed
类别的 1 次购买的行数),请参阅关于如何按组对变量求和的常见问题解答。
推荐阅读
- html - 在网格布局中设置图像以在悬停时更改
- apache-kafka - Kafka 的 __consumer_offsets 中的消息时间戳和 commit_timestamp
- tensorboard - 多个数据集之间的 Tensorboard 投影仪动画转换
- jupyter - JupyterHub Spawn 第一次安装报错
- c++ - VS2019:如何解决资源视图中的“未知子语言:0x8”消息?
- c# - 如何清除 Cefsharp (Chromium) 代理缓存以更改代理凭据?
- windows - 为什么我的 Anaconda 提示修饰符显示完整的环境路径?
- apache - apache2.service 的作业失败,因为控制进程以错误代码退出。请参阅“systemctl status apache2.service”
- javascript - 用于作为函数参数的可选值组的打字稿
- python - 如何使用python将元素添加到json对象中的特定位置