csv のシェープファイルとデータ テーブルの間の空間結合を試行しているときに、問題が発生しました。
Here's what my data looks like:
Point Shapefile's attribute data (StudentID):
ID Address Long Lat
123.00 street long lat
456.00 street long lat
789.01 street long lat
223.00 street long lat
412.02 street long lat
Data Table (Table):
ID Name Age School
123.00 name age school
456.00 name age school
789.01 name age school
223.00 name age school
412.02 name age school
重要な注意:StudentID
約 500 のレコードが含まれていますが、テーブルには 250 しかありません。一部のレコードはStudentID
一致しません。
問題 1:
Rにインポートするためにcsvに変換したExcelファイルがあります。結合を実行しているときに、ID列でデータ形式の一部が変更されていることに気付きました(同じ123.00
になるでしょう123;
456.00
)456;
789.01
。ただし、メモ帳でcsvファイルを開くと、フォーマットは正しいです。テーブルを .txt ファイルとして読み取ろうとしましたが、うまくいきませんでした。なぜこれが起こるのか、これを克服する方法は何ですか?
IDS は下 2 桁に関係なく一意であるため、完全一致に基づいてデータを結合できなかったため、部分結合を試みることにしました。これが問題 2 につながりました...
問題 2:
これが私が2つを結合するために使用したものです:
StudentID@data = data.frame(StudentID@data, data[charmatch(StudentID@data$ID,Table$ID,])
これによりデータが結合されましたが、予想どおり、NA を含む行も返されました。na.omit を使用して行を削除すると、結果のデータには一致するすべての行が含まれていました。ただし、シェープファイルには、すべてのポイントがまだ残っています。レコードが削除されたときに、これらのドットが残ったのはなぜですか?