假设我有一个熊猫数据框,df
其中包含A
,B
和C
。我想从列上的算术运算符计算逐行最小值df['D']=min(df['A']+dF['B']*3, df['C']*np.sqrt(12))
。我已经看到了相关的问题,它会看起来像我需要在参数先创建两列min
功能,并执行min
的axis =1
。我想知道是否还有另一种方法,而不创建临时列。
无需创建新列,您可以使用apply
:
df['D'] = df.apply(lambda x: min(x['A'] + x['B']*3, x['C']*np.sqrt(12), axis=1)
最好这样做:
df['D'] = np.mininum(df['A']+dF['B']*3, df['C']*np.sqrt(12))
它创建两个中间列/系列,但由于矢量化,速度更快。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句