gpt4 book ai didi

python - 如何构建多索引转换矩阵?

转载 作者:行者123 更新时间:2023-11-28 17:06:23 26 4
gpt4 key购买 nike

我从以下表格数据开始:(假设按版本测试结果)

    Item  Result   Version0   TO     OK      V11   T1    NOK      V12   T2     OK      V13   T3    NOK      V14   TO     OK      V25   T1     OK      V26   T2    NOK      V27   T3    NOK      V2
df=p.DataFrame({'Item': ['TO','T1','T2','T3','TO','T1','T2','T3'],
'Version': ['V1','V1','V1','V1','V2','V2','V2','V2'],
'Result' : ['OK','NOK','OK','NOK','OK','OK','NOK','NOK']})

然后我尝试构建以下报告:

            V2            OK      NOKV1  OK      T0      T2    NOK     T1      T3

(上面的 T0 应该是一个 python setset 函数聚合产生),我想在两行上都有 multiindexes和列。

我想不出如何将相同的“结果”列放入行和列多索引中。有什么线索吗?

最佳答案

IIUC,基本上我们可以通过使用 pivot

将这个问题视为从长到宽的问题
df['New']=list(zip(df.Version,df.Result))
s=df.groupby('Item').New.apply(list).apply(pd.Series).reset_index().pivot(0,1,'Item')
s
Out[502]:
1 (V2, NOK) (V2, OK)
0
(V1, NOK) T3 T1
(V1, OK) T2 TO


s.index=pd.MultiIndex.from_tuples(s.index)
s.columns=pd.MultiIndex.from_tuples(s.columns)
s
Out[507]:
V2
NOK OK
V1 NOK T3 T1
OK T2 TO

关于python - 如何构建多索引转换矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50709365/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com