我有两个数据集,一个数据集只有世界网格“ Ggrid”(LON- -179.875,179.875和LAT- -89.875,89.875。共计1036800),另一个数据集有世界深度和不同深度的氧气数据“ 1JAN --(LON- -79.5,179.5和LAT- -89.5,89.85。)。我想通过World网格合并此数据,这样我总共有1036800(720到1440)并且没有数据的单元格应该为NA。
我尝试过
> ENV1<-read.csv('1JAN.csv') > Ggrid<-read.csv('Ggrid.csv') > head(Ggrid) LON LAT 1 -179.875 -89.875 2 -179.875 -89.625 3 -179.875 -89.375 4 -179.875 -89.125 5 -179.875 -88.875 6 -179.875 -88.625 > ENV1 <- ENV1[,1:7] > head(ENV1) LAT LON X0 X5 X10 1 -77.5 -178.5 8.28 NA NA 2 -77.5 -174.5 NA NA NA 3 -77.5 -170.5 7.96 7.991 8.000 4 -77.5 -167.5 8.08 8.090 8.100 5 -77.5 -165.5 8.09 8.154 8.180 6 -77.5 -163.5 8.93 8.923 8.905 > m2 <- merge(Ggrid, ENV1, by = c("LAT","LON")all.x=T) 1 NA NA NA NA NA NA NA NA NA NA NA NA NA 2 NA NA NA NA NA NA NA NA NA NA NA NA NA 3 NA NA NA NA NA NA NA NA NA NA NA NA NA 4 NA NA NA NA NA NA NA NA NA NA NA NA NA 5 NA NA NA NA NA NA NA NA NA NA NA NA NA 6 NA NA NA NA NA NA NA NA NA NA NA NA NA
问题是坐标不匹配,所有点都可以位于格网上。我之前提了一个问题,并给出了坐标是否匹配的答案,但是在这种新情况下,坐标是不同的。
ENV1看起来像这样:
LON LAT X0 X5 X10 -77.5 -178.5 8.28 NA NA -77.5 -178 7.28 NA NA -77.5 -177.5 8.06 NA NA -77.5 -177 7.65 7.43 NA -77.5 -176.5 7.54 7.32 NA -77.5 -176 7.43 7.21 NA -77.5 -175.5 7.32 7.1 7.28 -77.5 -175 7.21 6.99 8.06 -77.5 -174.5 7.1 6.88 7.65 -77.5 -174 6.99 7.43 7.54 -77.5 -173.5 6.88 7.32 6.88 -77.5 -173 6.77 7.21 7.28 -77.5 -172.5 6.66 7.28 7.28
与首席运营官合并后;它应该看起来像这样;
LON LAT X0 X5 X10 -77.675 -178.875 8.28 NA NA -77.675 -178.625 7.28 NA NA -77.675 -177.375 8.06 NA NA -77.675 -177.125 7.65 7.43 NA -77.675 -176.875 7.54 7.32 NA -77.675 -176.625 7.43 7.21 NA -77.675 -175.375 7.32 7.1 7.28 -77.675 -175.125 7.21 6.99 8.06 -77.675 -174.875 7.1 6.88 7.65 -77.675 -174.625 6.99 7.43 7.54 -77.675 -173.375 6.88 7.32 6.88 -77.675 -173.125 6.77 7.21 7.28 -77.675 -172.875 6.66 7.28 7.28
希望能进一步提供帮助。谢谢
我认为您正在寻找左联接。尝试m2 <- merge(Ggrid, ENV1, by=c("LAT", "LON"), all.x=T)