Python 表到矩阵到网格的转换

Python 表到矩阵到网格的转换,python,pandas,matrix,grid,geo,Python,Pandas,Matrix,Grid,Geo,我有一个熊猫数据集的经度高度和平均一氧化碳数据点。我想用颜色映射的CO值在高度与经度的网格上绘制这些。 我的值的格式为: longitude height CO 71 8000.0 50.958159 9000.0 59.076651 10000.0 46.716544 11000.0 43.170888 72 8000.0 45.724138 9000.0 45.

我有一个熊猫数据集的经度高度和平均一氧化碳数据点。我想用颜色映射的CO值在高度与经度的网格上绘制这些。 我的值的格式为:

longitude height   CO
71        8000.0   50.958159
          9000.0   59.076651
          10000.0  46.716544
          11000.0  43.170888
72        8000.0   45.724138
          9000.0   45.505567
          10000.0  40.749734
          11000.0  42.305107
73        8000.0   53.045872
          9000.0   56.013487
          10000.0  42.418022
          11000.0  40.897789
74        7000.0   48.440000
          8000.0   59.165261
          9000.0   50.215405
          10000.0  42.504561
          11000.0  46.189446
75        7000.0   47.590909
          8000.0   38.887422
          9000.0   33.653982
          10000.0  47.762696
          11000.0  45.612828
我试图通过占用所有相关值的矩阵来实现这一点:

matrix = np.zeros(shape=(30, 12))

for i in range(70,100):
    for j in range(0,12):
        h = j*1000
        if grid_data.loc[(grid_data['longitude']) & (grid_data.loc(grid_data['height'] == h))
            x = i-70
            val = (grid_data.loc[(grid_data['longitude'] = i) & (grid_data['height'] = h))
            matrix[x,j] = val['CO']

然而,我意识到这完全是错误的,就像我在数据帧上做if语句一样。我不知道如何从这里继续,因此非常感谢您的帮助。

假设您的数据帧名为“df”,您可以使用df.pivot来“映射”它,就像:

df.pivot(index="longitude", columns="height", values="CO")

请与
df.to_dict()
共享您的初始数据帧。这实际上非常有效,我从未听说过这个函数,但它非常适合。