我是新來的Python,我不知道如何解決以下問題。如何在數據框的每一行上應用函數?
我有一個函數:
def EOQ(D,p,ck,ch):
Q = math.sqrt((2*D*ck)/(ch*p))
return Q
說我有數據幀
df = pd.DataFrame({"D": [10,20,30], "p": [20, 30, 10]})
D p
0 10 20
1 20 30
2 30 10
ch=0.2
ck=5
而且ch
和ck
是浮點類型。現在我想將公式應用於數據框的每一行,並將其作爲額外的行'Q'返回。一個例子(即不工作)將是:
df['Q']= map(lambda p, D: EOQ(D,p,ck,ch),df['p'], df['D'])
(僅返回「地圖」類型)
我會更需要在我的項目這種類型的處理,我希望能找到一些作品。
你可以看一下通過這個功能適用功能行:docs.scipy.org/doc/numpy/reference/generated/numpy.apply_along_axis.html – Litwos