次のようなデータフレームがあります。
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
各行は、あるユーザーから別のユーザーに送信されたメッセージの数(長さ)を示しています。
私がやりたいのは、各国間で送信されるメッセージの視覚化を(D3のコード図を介して)作成することです。
ほぼ200カ国があります。次のように関数dcastを使用します。
countries <- dcast(chats,from_country ~ to_country,drop=FALSE,fill=0)
これは、以前はデータセットと変数が少なかったときに機能しましたが、このデータセットは300万行を超えており、いわばデバッグが容易ではありません。
とにかく、私が今得ているのは正方形ではない行列であり、なぜそうなのか理解できません。私が取得することを期待しているのは、本質的に、(i,j)th
セルがに送信されたメッセージを表すcountry i
行列country j
です。最終的にはこれに非常に近いものになりますが、一部の行と列が明らかに欠落しています。これは、US-> USメッセージが1行または列シフトして表示されるため、簡単に見つけることができます。
これが私の質問です。明らかに間違っていることはありますか?そうでない場合、これを整理するためにデータセットで探す必要のある「奇妙な」ものはありますか?