R - Dopasowanie wierszy i kolumn macierzy o różnej długości
mój problem w tej chwili jest następujący. Mam skierowany do jednego trybu edgelist reprezentujący pary aktorów uczestniczących we wspólnych projektach w danym roku, które mogą wyglądać tak:
projektleader projectpartner year
A B 2005
A C 2000
B A 2002
... ... ...
Teraz potrzebuję tylko podzbioru na jeden konkretny rok. Nie wszyscy aktorzy są aktywni w danym roku, więc wymiary podzbiorów są różne. Do następnej analizy sieci potrzebuję ważonej i ukierunkowanej macierzy sąsiedztwa, więc używam opcji [pakietu sieciowego], aby ją utworzyć. Najpierw ładuję go jako obiekt sieciowy i transformuję go w macierzy przyległości.
grants_00 <- subset(grants, (year_grant=2000), select = c(projectpartner, projectleader))
nw_00 <- network(grants_08to11[,1:2], matrix="edgelist", directed=TRUE)
grants_00.adj <- as.matrix(nw_00, matrix.type = "adjacency")
Powstała macierz wygląda nieco podobnie
A B C E ...
A 0 1 1 0
B 1 0 0 0
...
Jak na razie dobrze. Moim problemem jest teraz: do dalszej analizy, którą planuję, potrzebuję macierzy sąsiedztwa dla każdego roku o tym samym wymiarze i porządku. Oznacza to, że wszystkie podmioty z początkowego zestawu danych muszą być nazwami macierzy wiersza i kolumny dla odpowiednich lat, ale macierz powinna zawierać tylko obserwowane pary dla tego roku. Mam nadzieję, że mój problem jest jasny. Doceniam wszelkie konstruktywne rozwiązania.
Mój pomysł ATM jest następujący: Tworzę macierz początkowego zestawu danych i zredukowanego zestawu danych. Następnie ustawiam tam wszystkie wartości macierzy na zero. Następnie w jakiś sposób dopasowuję go do zredukowanej macierzy i wypełniam ją odpowiednimi wartościami w prawym wierszu i kolumnie. Niestety nie mam pojęcia, jak to możliwe.
Czy ktoś ma pomysł, jak rozwiązać ten problem?