###前提・実現したいこと
xとyのデータフレーム(欠損値含む)をleft_joinで結合しようとしています。具体的には、下記のデータフレームxとyを使って、エクセルのvlookupのように、xのpost(郵便番号です)をキーにして、yのdist(距離です)を引っ張ってきて、xに結合させたいです。
> head(x) No. post 1 1 3230041 2 2 3060234 3 3 NA 4 4 3400203 5 5 3060023 6 6 3231104 > head(y) No. post dist 1 1 3114201 68.64191 2 2 3114208 68.53332 3 3 3114203 71.68876 4 4 3114208 68.68000 5 5 3114202 70.11277 6 6 3114208 68.39570
###発生している問題・エラーメッセージ
dplyrのleft_joinを用いて結合しようとしていますが、下記のように結合後のデータフレームにはNAが大量に出て困っています。本来データフレームxには例えばNo.3の行は一つしかないのに、No.3のNAが複数でてきてしまいます。
キーがNAのものはyから引っ張ってきた値(dist、距離)をNAにしたいのですが、可能でしょうか。よろしくお願いいたします。
> ketugou <- dplyr::left_join(x,y,by='post') > head(ketugou, n=10) No..x post No..y dist 1 1 3230041 40805 13.608177 2 2 3060234 818 4.918916 3 3 NA 11074 40.423562 4 3 NA 11075 41.014067 5 3 NA 11076 40.512040 6 3 NA 11077 40.541405 7 3 NA 11078 40.694075 8 3 NA 11079 40.853463 9 3 NA 11080 40.876444 10 3 NA 11081 41.080959
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/29 15:56
2017/06/30 07:21
2017/07/02 14:20