我想要學習如何使用lambda表達式而不使用for循環,該函數從數據框的兩列的行中獲取參數並寫入結果到另一列。使用lambda函數從不同列的數據幀中獲取參數
import pandas as pd
df = pd.DataFrame({"A": [1,2,3], "B": [2,3,4]})
print(df)
df["C"] = ""
print(df)
def add_num(num1 ,num2):
return num1 + num2
for i in range(len(df)):
df["C"][i] = add_num(df["A"][i], df["B"][i])
print(df)
還有一個問題=)這個版本的性能與for循環版本有差別嗎? – s900n
不,它只是語法糖 – EdChum
不,這不是事實。當調用''lambda'時調用'add_num'函數會比直接調用循環中的'add_num'要慢。然而,這可能是循環對'apply'效率更高一點。但我的猜測是,使用'lambda'的抽象將會變慢。 – MSeifert