私はパンダのデータフレームに単純な関数を適用しようとしています。私は「my_res」で定義された式から、「ターゲット」と呼ばれる変数を達成したい、と私はこのような式があった場合のデータフレームapply function pandas dataframe
import pandas as pd
df = pd.DataFrame({'ID':['1','2','3'], 'v1': [0,2,3], 'v2':[1,4,5], 'v3':[11,43,52]})
print df
def my_res (x,y,z):
target=(x*z)/y
return target
df['target'] = df.apply(my_res('v1','v2','v3'),axis=1)
print df
と何にそれを追加します。
def my_res (x,y,z):
target=(x*z)/y
check=target-z
return target
#in this case I want to create 2 variable in the df
おかげで、私は私の質問に汎化ディテールを追加 – progster
確かに、あなたは(df.v3).div(df.v2).SUB( 'DF [ '目標'] = df.v1.mulを使用することができますdf.v3) ' ' df ['target'] = df.v1 * df.v3 /df.v2 - df.v3'です。ベクトル化アプローチが不可能な場合には 'apply'解法が使用されます。 – jezrael