У меня есть кадр данных, например:
Name Position Value
a 1 0.2
a 3 0.4
a 4 0.3
b 1 0.5
b 2 0.4
b 5 0.3
c 2 0.3
c 3 0.4
c 5 0.1
d 1 0.2
d 2 0.4
d 3 0.5
Я хочу сделать так, чтобы позиция всегда менялась от 1 до 5 для каждого имени и заполнила NA в значение следующим образом:
Name Position Value
a 1 0.2
a 2 NA
a 3 0.4
a 4 0.3
a 5 NA
b 1 0.5
b 2 0.4
b 3 NA
b 4 NA
b 5 0.3
c 1 NA
c 2 0.3
c 3 0.4
c 4 NA
c 5 0.1
d 1 0.2
d 2 0.4
d 3 0.5
d 4 NA
d 5 NA
Есть ли способ сделать это, не создавая фиктивный фрейм данных с первыми двумя столбцами, а затем выполняя какое-то внешнее соединение со слиянием?
Спасибо.
merge
очень простоdf1 <- expand.grid(Name=unique(df$Name), Position=1:5); merge(df1, df,all=TRUE)
- person akrun   schedule 27.10.2014merge
- person akrun   schedule 27.10.2014