r - 在R中按组计算多列的出现
问题描述
我有一个看起来像这样的df:
Room Item Red Square
Basement Ball TRUE FALSE
Basement Basket TRUE TRUE
Basement Table FALSE TRUE
Basement Desk TRUE TRUE
我想计算 Square、Red 和 square + red 项目的数量,所以最终的 DF 看起来像这样:
Room Square Red Both
Basement 1 1 2
我试过
df %>%
group_by(Room, Square, Red) %>%
count()
给我计算类别,但我不知道如何按照我的意愿格式化它。
解决方案
在此管道中,必须使用不同的名称命名新创建的变量,以便在使用 时summarise
,第二个和第三个变量不使用新创建的变量Square
。我稍后在同一管道中重命名它们。
df %>%
group_by(Room) %>%
summarise(
Square_new = sum(Square & !Red),
Red_new = sum(Red & !Square),
Both_new = sum(Square & Red)
) %>%
rename(Square = Square_new, Red = Red_new, Both = Both_new)
输出
# A tibble: 1 x 4
# Room Square Red Both
# <chr> <int> <int> <int>
# 1 Basement 1 1 2
推荐阅读
- python - tf.nn.sigmoid_cross_entropy_with_logits 的尺寸问题:无法挤压 dim 1
- scala - 如何在 Gatling 中从 csv 文件中注入数据?
- python-3.x - 我必须在 python 中访问列表成员的索引。我想打印索引的位置。但在我的代码中,我无法检查它是否有条件
- laravel-5 - 将对象与数组匹配以在 vuejs 中进行排序
- javascript - Mongo 将 $slice 聚合到特定值而不是数组
- html - 如何将 div 及其内容移动到中间
- javascript - 如何将搜索图标放在输入框的左侧
- java - Spring AMQP 项目不做任何事情
- python-3.x - 如何在 Python 中使用 TensorBoard 和 Keras 来可视化嵌入
- swift - 无法将“UINavigationController”(0x10e360420)类型的值转换为“MainApp.detailViewController”