在下一个代码中,我希望,当在一行中找到0.254的值时,它不被平均,值0.254被留下并转到下一行,但它不起作用,它平均所有值df = pd.DataFrame({'uno': [1, 2, 3], 'dos': [0.254, 5, 6], 'tres': [7, 8, 9]}, index=['x', 'y', 'z'])df_range = len(df)for row in df: if df[row][i]==0.254: df['mean'][i]=0.254 else: df['mean'] = df.mean(axis=1)print df你知道它可能错在哪里吗?也许在部分: else: df['mean'] = df.mean(axis=1)但我不知道如何解决它谢谢!
1 回答

杨魅力
TA贡献1811条经验 获得超6个赞
如果该行中的任何值为 0.254,则 用于将平均值设置为 0.254,否则将其设置为行本身的平均值,例如:np.where
df['mean'] = np.where(df.eq(0.254).any(axis=1), 0.254, df.mean(axis=1))
添加回答
举报
0/150
提交
取消