首页 > 解决方案 > 从对应于数据框条目的数据数组中提取值

问题描述

我有一个数据数组,其中包含纬度、经度点的数据。我有一个包含端口名称列表及其纬度和经度的数据框。我想将两者结合起来,从数组中提取与端口关联的特定纬度、经度点对应的值,并在数据框中添加一个带有该值的新列。

大批:

<xarray.DataArray (lat: 109, lon: 327)>
array([[0., 0., 0., ..., 0., 0., 0.],
       [0., 0., 0., ..., 0., 0., 0.],
       [0., 0., 0., ..., 0., 0., 0.],
       ...,
       [0., 0., 0., ..., 0., 0., 0.],
       [0., 0., 0., ..., 0., 0., 0.],
       [0., 0., 0., ..., 0., 0., 0.]])
Coordinates:
  * lat      (lat) float64 -52.0 -51.0 -50.0 -49.0 -48.0 ... 53.0 54.0 55.0 56.0
  * lon      (lon) float64 28.0 29.0 30.0 31.0 32.0 ... 351.0 352.0 353.0 354.0

数据框:

Latitude    Longitude   Port Name
0   39.871112   20.003421   Sarande
1   40.450605   19.483051   Vlora
2   41.810046   19.584720   Shengjin
3   41.308849   19.454677   Durres
4   35.819101   -0.247319   Bettioua

理想的输出如下所示:

Latitude    Longitude   Port Name    Value
    0   39.871112   20.003421   Sarande    0
    1   40.450605   19.483051   Vlora      1
    2   41.810046   19.584720   Shengjin   2
    3   41.308849   19.454677   Durres     3
    4   35.819101   -0.247319   Bettioua   4

我尝试将数组转换为数据框并将两者合并在一起,但无法产生我想要的结果。也尝试过np.sort()在数组上使用并从中创建一个数据框,但最终也没有得到结果。

标签: pythonpandasdataframepython-xarray

解决方案


推荐阅读