Nie wiem, dlaczego dcast () ten zestaw danych powoduje spadek zmiennych
Mam ramkę danych, która wygląda jak:
id fromuserid touserid from_country to_country length
1 1 54525953 47195889 US US 2
2 2 54525953 54361607 US US 1
3 3 54525953 53571081 US US 2
4 4 41943048 55379244 US US 1
5 5 47185938 53140304 US PR 1
6 6 47185938 54121387 US US 1
7 7 54525974 50928645 GB GB 1
8 8 54525974 53495302 GB GB 1
9 9 51380247 45214216 SG SG 2
10 10 51380247 43972484 SG US 2
Każdy wiersz opisuje liczbę wiadomości (długość) wysłanych od jednego użytkownika do innego użytkownika.
Chciałbym stworzyć wizualizację (za pomocą diagramu akordów w D3) wiadomości wysyłanych między poszczególnymi krajami.
Istnieje prawie 200 krajów. Używam funkcji dcast w następujący sposób:
countries <- dcast(chats,from_country ~ to_country,drop=FALSE,fill=0)
To działało wcześniej dla mnie, gdy miałem mniejszy zestaw danych i mniej zmiennych, ale ten zestaw danych ma ponad 3M wierszy i niełatwo jest go debugować.
W każdym razie otrzymuję teraz matrycę, która nie jest kwadratowa i nie mogę zrozumieć, dlaczego nie. Spodziewam się uzyskać zasadniczo macierz, w której(i,j)th
komórka reprezentuje wiadomości wysłane zcountry i
docountry j
. To, z czym kończę to coś bardzo bliskiego, ale oczywiście brakuje niektórych wierszy i kolumn, co jest łatwe do zauważenia, ponieważ wiadomości US-> US pojawiają się przesunięte o jeden wiersz lub kolumnę.
Oto moje pytanie. Czy jest coś, co robię, co jest oczywiście błędne? Jeśli nie, czy jest coś „dziwnego”, którego powinienem szukać w zestawie danych, aby to rozwiązać?