前提・実現したいこと
「R」で経度や緯度が入っているデータを用いて距離計算をしています。
データの内容はある国の世帯データです。
距離計算を行い、他の世帯が200m以内であれば1、それ以上であれば0が入るダミー変数を作成しました。
最終的には、ダミー変数に1を各家計の所得に置き換えたいです。
例)A,B,C,D,Eの5世帯があったとして、Aさんの家から200m以内の家はB,Cだとします。
B,Cには1が入り、D,Eには0が入ります。
現状、ここまでは以下のコードで完成しています
これから、200m以内の家計(ダミーに1が入っている家計)の所得が知りたいので
1を所得に置き換えたいです。
現状、このような形でダミー変数を作成しています。
この1を所得に置き換えたいです。
||所得|A|B|C|D|E|
|:--|:--:|--:|
|A|1000|1|1|1|0|0
|B|2000|1|1|1|0|0
|C|2000|1|1|1|0|0
|D|1500|0|0|0|1|1
|E|1000|0|0|0|1|1
完成イメージ
||所得|A|B|C|D|E|
|:--|:--:|--:|
|A|1000|1000|2000|2000|0|0
|B|2000|1000|2000|2000|0|0
|C|2000|1000|2000|2000|0|0
|D|1500|0|0|0|1500|1000
|E|1000|0|0|0|1500|1000
発生している問題・エラーメッセージ
ダミー変数を作成したところで止まっています。
該当のソースコード
#200m以内にある世帯のダミーを作成 for (i in 1:28){ for (j in 1:28){ colname <- gps_v1_v2[i, "hhid"] gps_v1_v2[j,colname ] <- distGeo(gps_v1_v2[i, c("longitude", "latitude")], gps_v1_v2[j, c("longitude", "latitude")]) gps_v1_v2[j,colname ] <- ifelse(gps_v1_v2[j,colname ] <= 200,1, 0) } }
試したこと
<= 200,1, 0)
の1の部分に所得データの変数名である”income”
と入力しましたが、1の所に「1行目の世帯の所得」がすべての1に代入されてしまいました。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。