Belirli koşullar altında sayım tablosu oluşturma

0

Soru

Bir dizi ikili değişkenim var (0 ve 1 değerleriyle) ve değişken çiftlerinin kümelenme sayılarını özetleyen iki yönlü bir sayım tablosu oluşturmak istiyorum (yani, her ikisi de 1 değerine sahip). İşte örnek bir veri kümesi:

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")

Sonunda, Korku(=1) ve cinsiyet(=1), Gerilim(=1) ve cinsiyet(=1), Komedi(=1) ve cinsiyet(=1), Romantik(=1) ve cinsiyet(=1) ve sci.fi(=1) ve cinsiyet (=1).

1

En iyi cevabı

3

Böyle bir şeyi?

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
2021-11-23 19:15:28

Teşekkür ederim. Tam olarak aradığım şey bu. Dikey yapmak için sonunda t() eklerdim
cliu

Bir takip sorusu. Değer 1 ve cinsiyet = 0 olan diğer tüm değişkenleri sayan başka bir sütunun nasıl ekleneceğini biliyor musunuz? Tercihen aynı parçada dplyr kod
cliu

Diğer dillerde

Bu sayfa diğer dillerde

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................