【问题标题】:normalize smooth ndimension dataframe归一化平滑维度数据框
【发布时间】:2021-08-03 02:53:00
【问题描述】:

我有以下数据框df1,它实际上表示带有坐标的网格:

     latitude  longitude  level            time
0   40.008606  20.114280  880.0  3/31/1981 5:00
1   40.008606  20.114280  880.0  3/31/1981 6:00
2   40.008606  20.114280  880.0  3/31/1981 7:00
3   40.008606  20.114280  880.0  3/31/1981 8:00
4   39.665283  20.097115  855.0  3/31/1981 5:00
5   39.665283  20.097115  855.0  3/31/1981 6:00
6   39.665283  20.097115  855.0  3/31/1981 7:00
7   39.665283  20.097115  855.0  3/31/1981 8:00
8   39.665283  19.911120  860.0  3/31/1981 5:00
9   39.665283  19.911120  860.0  3/31/1981 6:00
10  39.665283  19.911120  860.0  3/31/1981 7:00
11  39.665283  19.911120  860.0  3/31/1981 8:00

我想标准化 - 将 4d 天气数据插入到网格上方,而 latitudelongitudeleveltime 是维度。分辨率为 0.25deg latitudelongitude 以及分辨率为 25mbar level 的值位于以下数据框 df2

    latitude  level  longitude            time          t
0      40.00  875.0      20.00  3/31/1981 5:00   7.622246
1      40.00  875.0      20.00  3/31/1981 6:00   8.832257
2      40.00  875.0      20.00  3/31/1981 7:00   1.107310
3      40.00  875.0      20.00  3/31/1981 8:00  11.144372
4      40.00  900.0      20.00  3/31/1981 5:00   8.736878
..       ...    ...        ...             ...        ...
66     40.25  900.0      20.25  3/31/1981 8:00   6.014550
67     40.25  850.0      20.25  3/31/1981 5:00   6.729872
68     40.25  850.0      20.25  3/31/1981 6:00   8.098390
69     40.25  850.0      20.25  3/31/1981 7:00   5.234497
70     40.25  850.0      20.25  3/31/1981 8:00   5.968091

整个数据框位于this link。所以,我需要的是数据帧df2 的列tdf1 中的新列的形式在数据帧df1 上展开标准化。希望期望的输出是明确的。

到目前为止,我正在考虑this post 解决方案,但它对所有维度都使用相同的数据类型,这里不是这种情况。我设法找到最近的latitudelongitudelevel df2 并将这些列添加到 df1 然后使用:

rslt= pd.merge(df1,df2,on=["latitude","level","longitude"],how="left")

但这只会获得最近的成员,而不是平滑的插值超过上述尺寸。

感谢您提供解决此问题的任何帮助。

【问题讨论】:

    标签: python pandas dataframe scipy


    【解决方案1】:

    我建议您将数据转换为 xarray 数据集,然后使用其多维插值功能:

    http://xarray.pydata.org/en/stable/user-guide/interpolation.html#multi-dimensional-interpolation

    【讨论】:

      猜你喜欢
      • 2018-08-23
      • 1970-01-01
      • 2017-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-13
      • 2015-11-16
      • 1970-01-01
      相关资源
      最近更新 更多