【问题标题】:Creating a new variable based on conditions of 3 other variables in R根据 R 中其他 3 个变量的条件创建一个新变量
【发布时间】:2022-07-15 00:22:17
【问题描述】:

我在 R 中有一个如下所示的数据集 (n=500)

ID    A      C      S
1     4      4      4 
2     3      2      3
3     5      4      2

我想创建一个新变量(我称这个变量为“相同”),它告诉我我的任何列是否具有相同的值(不包括我的 ID 列)。所以,

ID    A      C      S     Same
1     4      4      4     all
2     3      2      3     as
3     5      4      2     none
4     7      7      2     ac

任何帮助将不胜感激!我很迷茫!谢谢!

【问题讨论】:

    标签: r


    【解决方案1】:

    我们可能会使用

    df1$Same <- apply(df1[-1], 1, \(x) {x1 <- if(length(unique(x)) == 1) 'all' else paste(tolower(names(x))[duplicated(x)|duplicated(x, fromLast = TRUE)], collapse = "");x1[x1 == ""] <- "none"; x1})
    

    【讨论】:

      最近更新 更多