如何基于索引将Pandas DataFrame指定行替换为对应列表值
基于索引替换DataFrame特定单元格值的方法
要实现将A列0至15行替换为replace_1列表的对应值,先补充代码里缺失的random导入,再用两种常用方法完成替换:
import pandas as pd, numpy as np import random # 补充缺失的导入 df = pd.DataFrame(np.random.randint(0,100,size=(100, 2)), columns=list('AB')) replace_1=[i+random.randint(0, 50) for i in range(16)]
替换操作方法:
方法一:使用
loc(标签索引)loc支持包含首尾的标签范围切片,直接定位目标列和索引区间赋值:df.loc[0:15, 'A'] = replace_1这里
0:15会覆盖索引0到15的所有行,刚好匹配replace_1的16个元素。方法二:使用
iloc(位置索引)iloc遵循左闭右开的切片规则,取前16个行位置(对应索引0到15),列位置0对应A列:df.iloc[0:16, 0] = replace_1
两种方法都能精准基于索引完成替换,根据个人习惯选择即可。
内容的提问来源于stack exchange,提问作者H.Jamil
相关产品推荐
相关产品推荐

