我有一個熊貓DataFrame與3D測量(一些27k行)的數據。我已經創建了由3個座標列(x,y,z)組成的多索引。數據看起來像(沿y方向的多個XZ平面):熊貓DataFrame減去橫截面
Analog 1
Position Y Position X Position Z
y0 x0 z0 value0
y0 x0 z1 value1
y0 x0 z2 value2
y0 x1 z0 value3
y0 x1 z1 value4
y0 x1 z2 value5
y1 x0 z0 value6
y1 x0 z1 value7
y1 x0 z2 value8
y1 x1 z0 value9
y1 x1 z1 value10
y1 x1 z2 value11
下面是一個例子:sample data
在下一步驟我想減去的交叉的值部分/切片在y=y0
從每隔一個xz平面爲了正常化我的數據。目前,我通過循環遍歷每一行:
for row in data.itertuples():
ind = row[0]
value = row[1]
ref = data["Analog 1"].ix[(y0, ind[1], ind[2])]
data["Analog 1"].ix[ind] = value - ref
有沒有更優雅的方式?
如果我的回答能夠解決您的問題,那麼你能接受的話,將會有我的答案左上方的空刻度線,是這樣這個問題並不會得到解決 – EdChum