Pandas-将一列映射到另一列并对行应用乘法

Pandas-将一列映射到另一列并对行应用乘法,pandas,Pandas,我有这个数据框: df = pd.DataFrame({target:[0.0, 1.0, 2.0], points:[5.0, 2.5, 3.6}) 我需要得到最低的“目标”值(除0外),并将相应行上的“点”乘以2 结果是: target points 0.0 5.0 1.0 5.0 2.0 3.6 这是怎么回事?可能使用idxmin和loc: idx = df[df['target']!=0]['target'].idx

我有这个数据框:

df = pd.DataFrame({target:[0.0, 1.0, 2.0],
                   points:[5.0, 2.5, 3.6})
我需要得到最低的“目标”值(除0外),并将相应行上的“点”乘以2

结果是:

target points
0.0      5.0
1.0      5.0
2.0      3.6

这是怎么回事?

可能使用
idxmin
loc

idx = df[df['target']!=0]['target'].idxmin()
                
df['points'].loc[idx] = df['points'].loc[idx] * 2

很有魅力,非常感谢