Tworzenie nowych kolumn z ramki data.frame

Mam zbiór danych, który jest w formacie długim, w którym pomiary (czas) są zagnieżdżone w sieciowych partnerach (NP) zagnieżdżonych w Osoby (ID), oto przykład, jak to wygląda (prawdziwy zestaw danych ma ponad tysiące wierszy):

ID  NP  Time Outcome
1   11  1    4
1   11  2    3
1   11  3    NA
1   12  1    2
1   12  2    3
1   12  3    3
2   21  1    2
2   21  2    NA
2   21  3    NA
2   22  1    4
2   22  2    4
2   22  3    4

Teraz chciałbym utworzyć 3 nowe zmienne:

a) Liczba partnerów sieciowych (którzy nie mają NA w wyniku tego pomiaru) konkretna osoba (ID) ma czas 1

b) Liczba partnerów sieciowych (którzy nie mają NA w wyniku tego pomiaru) konkretną osobę (ID) o godzinie 2

c) Liczba partnerów sieciowych (którzy nie mają NA w wyniku tego pomiaru) konkretną osobę (ID) o godzinie 3

Chciałbym więc utworzyć taki zestaw danych:

ID  NP  Time Outcome  NP.T1  NP.T2  NP.T3
1   11  1    4        2      2      1
1   11  2    3        2      2      1
1   11  3    NA       2      2      1
1   12  1    2        2      2      1
1   12  2    3        2      2      1
1   12  3    3        2      2      1
2   21  1    2        2      1      1
2   21  2    NA       2      1      1
2   21  3    NA       2      1      1
2   22  1    4        2      1      1
2   22  2    4        2      1      1
2   22  3    4        2      1      1

Będę naprawdę wdzięczny za pomoc.

questionAnswers(1)

yourAnswerToTheQuestion