我试图以X, Y, Z
的形式加热地图数据,其中X和Y代表X,Y坐标,Z代表该点的功率值。我已经将数据以dataFrame的形式放在
data = pd.DataFrame({'X':X, 'Y':Y, 'Z':Z})
当我尝试data.pivot
时,它会给我一个重复的输入错误,因为有些点有相同的X和Y坐标。
我想知道是否有任何方法来抽取重复项并在存在重复的X和Y值时平均Z值,以便将它们绘制为seaborn热图。
答案 0 :(得分:1)
设置
X = [1, 1, 2, 2, 2]
Y = [1, 2, 1, 2, 1]
Z = [1, 2, 3, 4, 5]
data = pd.DataFrame({'X':X, 'Y':Y, 'Z':Z})
data
X Y Z
0 1 1 1
1 1 2 2
2 2 1 3
3 2 2 4
4 2 1 5
使用groupby
data.groupby(['X', 'Y'], as_index=False).mean()
X Y Z
0 1 1 1
1 1 2 2
2 2 1 4
3 2 2 4