我的数据分析反复出现在一个简单但不确定的主题上,即"除了一切之外的一切".拿这个多索引的例子,df
:
accuracy velocity name condition trial john a 1 -1.403105 0.419850 2 -0.879487 0.141615 b 1 0.880945 1.951347 2 0.103741 0.015548 hans a 1 1.425816 2.556959 2 -0.117703 0.595807 b 1 -1.136137 0.001417 2 0.082444 -1.184703
例如,我现在要做的是对所有可用试验进行平均,同时保留有关名称和条件的信息.这很容易实现:
average = df.groupby(level=('name', 'condition')).mean()
然而,在现实条件下,多索引中存储的元数据要多得多.该指数每行容易跨越8-10列.所以上面的模式变得非常笨拙.最终,我正在寻找一个"丢弃"操作; 我想执行抛出或减少单个索引列的操作.在上面的情况下,这是试用号码.
我应该咬紧牙关还是有更惯用的方式来解决这个问题?这可能是反模式!当谈到"真正的熊猫方式"时,我想建立一个体面的直觉...在此先感谢.