Python 熊猫-在迭代中使用具有相等值的行中的值

Python 熊猫-在迭代中使用具有相等值的行中的值,python,pandas,dataframe,iteration,Python,Pandas,Dataframe,Iteration,如果这在过去已经得到了回答,我想道歉,我不知道该如何表达这个问题。 我有一个带有三维坐标的数据框,以及空间中每个点的标量值(本例中为磁场)的行。我将半径计算为每个点在(x,y)=(0,0)处与直线的距离。唯一的半径和z值被传输到新的数据帧中。现在,我想计算体积中每个点(Z,R)的标量值,方法是对3d系统中所有点进行平均,半径相等 目前我正在迭代所有唯一的Z和R值。它可以工作,但速度非常慢 df是原始的数据帧,dfn是新的数据帧,在开始时只包含R和Z值的唯一组合 dfn.r.unique()中r的

如果这在过去已经得到了回答,我想道歉,我不知道该如何表达这个问题。 我有一个带有三维坐标的数据框,以及空间中每个点的标量值(本例中为磁场)的行。我将半径计算为每个点在(x,y)=(0,0)处与直线的距离。唯一的半径和z值被传输到新的数据帧中。现在,我想计算体积中每个点(Z,R)的标量值,方法是对3d系统中所有点进行平均,半径相等

目前我正在迭代所有唯一的Z和R值。它可以工作,但速度非常慢

df是原始的数据帧,dfn是新的数据帧,在开始时只包含R和Z值的唯一组合

dfn.r.unique()中r的
:
对于df.z.unique()中的z:
dfn.loc[(df[“R”]=R)和(df[“Z”]=Z),“B”]=df[“B”][(df[“R”]=R)和(df[“Z”]=Z)]。平均值()
有没有办法通过编写一行代码来加速这一过程,在这行代码中,pandas被赋予从原始数据帧中获取所有行的命令,其中Z和R的值与新数据帧中的每一行对应

提前感谢您的帮助。

试试

看起来您可以通过以下方式实现:
df[['R','Z','B']].groupby(['R','Z']).mean()