You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas中遍历指定索引并高效更新列值?

高效更新指定索引行的category列

不用遍历close_index,直接用Pandas的矢量化条件赋值就能高效完成,完全避免循环带来的性能损耗,尤其适合大规模数据集:

方法一:使用apply快速赋值

# 定位到close_index对应的行,根据owncar值设置category
df.loc[close_index, 'category'] = df.loc[close_index, 'owncar'].apply(lambda x: 'LRLC' if x == 1 else 'LRHC')

方法二:用numpy.where实现更高性能(超大规模数据推荐)

import numpy as np

# 先提取目标行的owncar数据,再批量赋值
owncar_subset = df.loc[close_index, 'owncar']
df.loc[close_index, 'category'] = np.where(owncar_subset == 1, 'LRLC', 'LRHC')

优势说明

  • 完全规避Python层面的循环,依托Pandas/Numpy的底层C语言实现处理数据,速度比遍历快数倍甚至数十倍
  • 精准只操作close_index对应的行,不会遍历整个数据集
  • 代码简洁直观,后续维护成本低

你之前用df.loc[close_index,'hhinc8']=2更新hhinc8列的操作,和上面的代码可以直接衔接执行,不会影响其他行的数据。

内容的提问来源于stack exchange,提问作者Tallion 22

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 16:55:26