我有这样的数据:
df <- data.frame(id = c("001", "002", "003", "004"),
banana = c("banana", NA, NA, NA),
apple = c(NA, "apple", "apple", NA),
orange = c("orange", NA, NA, NA),
mango = c(NA, NA, NA, "mango"))
id banana apple orange mango
001 banana NA orange NA
002 NA apple NA NA
003 NA apple NA NA
004 NA NA NA mango
我想通过以下方式将变量合并为一个变量
flavor
:
id banana apple orange mango flavor
001 banana NA orange NA mixed
002 NA apple NA NA apple
003 NA apple NA NA apple
004 NA NA NA mango mango
我该怎么做?如有任何帮助,我们将不胜感激。
检查唯一计数是否大于 1:
apply(df[-1], 1, function(i)
ifelse(length(unique(na.omit(i))) > 1, "mixed", unique(na.omit(i))))
# [1] "mixed" "apple" "apple" "mango"