我有这种类型的pd数据帧(列中有多索引):
measurement meas1 meas2 ...
observer obs1 obs2 obs1 obs2 ...
1 1 1 1 1
2 2 1 6 3
3 2 3 3 2
列索引是唯一的。 我想为每个测量的观察者之间的差异创建一个数据帧:
measurement meas1 meas2 ...
observerpair (obs1,obs2) (obs1,obs2) ...
1 0 0
2 1 3
3 -1 1
我尝试了两个不同的for循环来创建差异数据帧。这个在里面:
data[('meas1','obs1')].subtract(data[('meas1','obs2')])
或者
data[('meas1','obs1')] - data[('meas1','obs2')]
我可以单独显示每一列,但每当我执行这两个计算中的一个时,就会得到如下结果:
measurement meas1
observer obs1 obs2
1 NaN NaN
2 NaN NaN
3 NaN NaN
我已经尝试了同样结构的另一个数据帧(由同样的脚本自动生成),这个问题从未发生过。正如我提到的,我自己检查了这些列,它们在这样调用时看起来很正常:
data[('meas1','obs1')]
可以对} 中的select列使用^{} :
MultiIndex
和^{如果要在输出中添加^{} :
相关问题 更多 >
编程相关推荐