Skip to main content
 首页 » 编程设计

python之Pandas:如何访问索引的值

2025年05月04日13del

我有一个数据框,想使用索引中的值创建另一列。
例如:

df=pd.DataFrame({'idx1':range(0,5), 'idx2':range(10000,10005), 'value':np.random.randn(5)}) 
df.set_index(keys=['idx1','idx2'], inplace=True) 
print df 
 
               value 
idx1 idx2            
0    10000 -1.470367 
1    10001  0.260693 
2    10002 -0.732319 
3    10003 -0.116977 
4    10004  1.106644 

我想做这样的事情:

df['idx1_mod']= df['idx1'] + 100 

(其实我想做更复杂的事情,但基本上我需要索引的值。)

现在我正在求助于重置索引(将索引字段作为列),通过访问列进行计算,然后重新创建索引。我确定我遗漏了一些明显的东西,但我看了很多东西,但一直遗漏它!

注意 - 我也试过 df.iterrows(),但它似乎提供了行的副本并且不允许我更新原始数据框。

请您参考如下方法:

df["idx1_mod"] = df.index.get_level_values(0).values + 100