繁体   English   中英

如何从 R 中的两个现有分类变量创建新变量

[英]How to create new variable from two existing categorical variables in R

我有两个不同的类别变量: A=factor(c(1,2,1,2,1))B=factor(c("g","g","h","g","h")) 我想有一个基于这两个类别的新分类变量。 例如,我想调用(1,g)=K, (2,g)=J, (1,h)=L 所以新变量将是factor(c("K","J","L","J","L"))

您可以使用命名向量来实现此目的:

A <- factor(c(1, 2, 1, 2, 1))
B <- factor(c("g", "g", "h", "g", "h"))

conv <- c("1 g" = "K",
          "2 g" = "J",
          "1 h" = "L")

C <- conv[paste(A, B)]
df$Cross_Tab <- dplyr::case_when(
  df$A %in% c ("1") & 
    df$B %in% c ("g") ~ K,
  df$A %in% c ("2") & 
    df$B %in% c ("g") ~ J,
  df$A %in% c ("1") & 
    df$B %in% c ("h") ~ L,
  )  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM