创建特定条件下的盘点表 [英] Create count table under specific condition

查看:13
本文介绍了创建特定条件下的盘点表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一组二进制变量(值为0和1),我想创建一个双向计数表,总结变量对的同现计数(即,它们的值都为1)。以下是一个数据集示例:

mm <- matrix(0, 5, 6)
m <- 2
n <- 2
df <- data.frame(apply(mm, c(1,2), function(x) sample(c(0,1),1)))
colnames(df) <- c("Horror", "Thriller", "Comedy", "Romantic", "Sci.fi", "gender")

最后,我想要一个表,统计恐怖(=1)和性别(=1),颤栗(=1)和性别(=1),喜剧(=1)和性别(=1),浪漫主义(=1)和性别(=1),以及科幻(=1)和性别(=1)的共现情况。

推荐答案

类似的内容?

library(dplyr)
df %>% 
  mutate(across(-gender, ~ifelse(.==1 & gender ==1, 1, 0), .names = "{col}_gender1" )) %>% 
  summarise(across(ends_with("gender1"), sum))
  Horror_gender1 Thriller_gender1 Comedy_gender1 Romantic_gender1 Sci.fi_gender1
1              1                3              2                1              0

这篇关于创建特定条件下的盘点表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆