[英]How can I replace df.iterrows() with df.apply() in Pandas?
我有以下循環:
dict1 = {}
dict2 = {}
for (i, row) in df[['col1', 'col2', 'col3']].iterrows():
dict1[row['col1']] = row['col2']
dict2[row['col1']] = row['col3']
據我所知,這個循環真的很慢(我在數據框df
有大約70'000行)。
有什么辦法可以加快速度嗎? 我用df.apply()
搜索了一下,他們說我應該使用df.apply()
而不是.iterrows()
。
IIUC,用途:
m=df[['col1', 'col2', 'col3']]
dict1=m.set_index('col1')['col2'].to_dict()
dict2=m.set_index('col1')['col3'].to_dict()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.