以下を実装するためのよりエレガントな方法は何ですか?
関数を適用したい:my_function
データフレームの各行に関数のパラメーターが含まれているデータフレームへ。次に、関数の出力をデータフレーム行に書き戻します。
results = pd.DataFrame()
for row in input_panel.iterrows():
(index, row_contents) = row
row_contents['target'] = my_function(*list(row_contents))
results = pd.concat([results, row_contents])
値を繰り返し処理し、最後にDataFrameを作成します。
results = pd.DataFrame([my_function(*x) for x in input_panel.values.tolist()])
あまり推奨されない方法は、DataFrame.apply
を使用することです。
results = input_panel.apply(lambda x: my_function(*x))
apply
の唯一の利点は、入力が少ないことです。