当前位置:  开发笔记 > 编程语言 > 正文

将两个数据框与r中的坐标合并

如何解决《将两个数据框与r中的坐标合并》经验,为你挑选了1个好方法。

我有两个数据集,一个数据集只有世界网格“ 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

希望能进一步提供帮助。谢谢



1> Ricky..:

我认为您正在寻找左联接。尝试m2 <- merge(Ggrid, ENV1, by=c("LAT", "LON"), all.x=T)

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有