gpt4 book ai didi

python - 如何按列值 reshape Pandas 数据框?

转载 作者:行者123 更新时间:2023-12-05 00:10:25 24 4
gpt4 key购买 nike

我有一个包含纬度、经度、时间和数据值的列的数据框。我想 reshape 它并将其转换为 xarray 数据数组,以便维度是时间 x 纬度/经度对,但我不确定最有效的方法。

具体来说,数据框的结构如下:

Index   Latitude    Longitude   Time    Data
0 1 2 1 1
1 2 4 1 2
2 1 2 2 3


我希望对数据进行重新整形,使其最终成为矩阵:
          Latitude 1/Longitude 2    Latitude 2/Longitude 4
Time 1 1 2
Time 2 3 Null

我目前正在通过对唯一的经纬度组合进行 for 循环,将每个组合保存为一个 xarray,然后在经纬度维度上将它们连接起来。

有什么方法可以更高效地 reshape 数据?

最佳答案

Pivot 是您想要的,但首先您需要新的列名:

df['col'] = 'Latitude' + df['Latitude'].astype(str) + '/Longitude' + df.Longitude.astype(str)

df.pivot(index='Time', columns='col', values='Data')

输出:
col   Latitude1/Longitude2  Latitude2/Longitude4
Time
1 1.0 2.0
2 3.0 NaN

关于python - 如何按列值 reshape Pandas 数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58328124/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com