我有一些数据,其中索引是阈值,值为两个类别0和1的真反率(trns)。
我想得到一个数据框(dataframe),以tnr为索引,在每个类别中对应该tnr的阈值。本质上,我想要这样:
我可以通过使用以下代码来实现这个效果:
pd.concat([pd.Series(data[0].index.values, index=data[0]),
pd.Series(data[1].index.values, index=data[1])],
axis=1)
或者,推广到任意列数:
def invert_dataframe(df):
return pd.concat([pd.Series(df[col].index.values,
index=df[col]) for col in df.columns],
axis=1)
然而,这种方法看起来非常粗糙且容易出错。是否有更好的方法来解决这个问题?也许 Pandas 原生功能可以做到这一点?
KeyError: 'level_0'
。 - sapo_cosmicos = data.stack().reset_index(name='a')
df = s.pivot(index='a', columns='level_1')
- sapo_cosmico