pandas:不带副本的分层索引切片

2024-04-26 15:10:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我想修改层次索引特定级别的某些行的数据帧条目。下面是一个典型的例子:

>>> index = pd.MultiIndex.from_arrays([['a','a', 'b', 'b'], [1,2,1,2]], 
...                                   names=['first', 'second'])
>>> data = pd.DataFrame(np.random.rand(len(index)), index=index, columns=['A'])
>>> print data
                     A
first second          
a     1       0.587781
      2       0.560407
b     1       0.492996
      2       0.267799

我想将second==2的行设置为0(例如)。我尝试使用DataFrame.xs方法,但它返回一个副本而不是一个视图:

^{pr2}$

最后一个赋值没有影响data(它当然改变了selected中的值)。在


Tags: 数据fromdataframedataindexnames条目级别