>>86
なるほどそうなんですね
前者だと、len(df)の回数だけループしてdf[""]に結果が代入される、をdf[""]=の行だけ繰り返すようなイメージで
例えばlen(df)が10万あったとしたら、10万ループ後にまた10万ループ…、みたいなことかと思ってました

実測してみました(合っているかどうかわかりませんが
かなり遅くなりましたね

import pandas as pd
import time
df=pd.DataFrame({"A":range(0,10000,1),"B":range(10000,20000,1),"C":range(20000,30000,1)})
start=time.time()
df["A+B"]=df["A"]+df["B"]
df["A+C"]=df["A"]+df["C"]
end=time.time()
print(end-start)

start=time.time()
df["A+B"]=0
df["A+C"]=0
for i in range(len(df)):
 df["A+B"].iloc[i]=df["A"].iloc[i]+df["B"].iloc[i]
 df["A+C"].iloc[i]=df["A"].iloc[i]+df["C"].iloc[i]
end=time.time()
print(end-start)

#0.0027747154235839844
#5.960754871368408