Мне нужна ваша помощь: у меня есть такой фрейм данных, как этот подраздел в data0 ниже.
data0 <- data.frame(id = c("AH001","AH001","AH002","AH002","AH002","AH002","AH003","AH003","AH003","AH003"),
numvisit = c(2,3,2,3,4,5,2,3,4,5),
datvisit = c(25/06/2014,24/07/2014,25/06/2014,24/07/2014,25/08/2014,26/09/2014,25/06/2014,24/07/2014,25/08/2014,26/09/2014),
weight = c(51.3,51.4,59.8,59.6,NA,NA,52.2,52.5,NA,NA),
center = c(1,1,1,1,1,1,1,1,1,1))
Я хотел бы создать новую переменную "poidslast", которая будет последним не-NA значением переменной "poids" для каждой группы Id. Как и в том, что у меня здесь, в «ожидаемых данных»
dataexpected <- data.frame(id = c("AH001","AH001","AH002","AH002","AH002","AH002","AH003","AH003","AH003","AH003"),
numvisit = c(2,3,2,3,4,5,2,3,4,5),
datvisit = c(25/06/2014,24/07/2014,25/06/2014,24/07/2014,25/08/2014,26/09/2014,25/06/2014,24/07/2014,25/08/2014,26/09/2014), weight =c(51.3,51.4,59.8,59.6,NA,NA,52.2,52.5,NA,NA),
center = c(1,1,1,1,1,1,1,1,1,1),
lastweight = c(NA,51.4,NA,59.6,NA,NA,NA,52.5,NA,NA))
Я пробовал некоторые функции, такие как ave, aggregate, ... но ...
Пожалуйста, помогите мне найти решение!
![Screen shot of the dataframe](https://i.stack.imgur.com/AyisK.png)
Теперь я хотел бы преобразовать мой фрейм данных в широкоформатный формат и иметь такие вещи: на этом снимке экрана "datawide" ==>
![](https://i.stack.imgur.com/3oIPT.png)