У меня есть большой кадр данных с группами и подгруппами. Я хотел бы определить индекс подгруппы в каждой группе, как показано в колонке OUTPUT
следующего кадра данных:Определить индекс подгруппы
df <- data.frame(
Group = factor(c("A","A","A","A","A","B","B","B","B")),
Subgroup = factor(c("a","a","b","b","b","a","a","b","b")),
OUTPUT = c(1,1,2,2,2,1,1,2,2)
)
Я пробовал несколько вариантов с без какого-либо успеха. Я хотел бы работать с dplyr
, но я не уверен, как это сделать. Следующий код возвращает неожиданный результат.
require(dplyr)
df <- df %>%
group_by(Group) %>%
mutate(
OUTPUT_2 = dplyr::id(Subgroup)
)
#df
# Group Subgroup OUTPUT_2
# (fctr) (fctr) (int)
#1 A a 8
#2 A a 8
#3 A b 8
#4 A b 8
#5 A b 8
#6 B a 4
#7 B a 4
#8 B b 4
#9 B b 4
У меня такое чувство, что я рядом, но не добираюсь туда. Может ли кто-нибудь помочь?
ли вам нужно что-то вроде ' as.numeric (Подгруппа) '? – aosmith