命名 Pandas DataFrame 中的列和行组

恩杰斯

我想为 Pandas DataFrame 中的列和行组命名,以实现与合并的 Excel 表相同的结果:

在此处输入图片说明

但是,我找不到任何方法来为显示的列/行组提供总体名称。

我尝试将表包装在一个数组中,但数据框不显示:

labels = ['a', 'b', 'c']
df = pd.DataFrame(np.ones((3,3)), index=labels, columns=labels)
labeledRowsCols = pd.DataFrame([df, df])
labeledRowsCols = pd.DataFrame(labeledRowsCols.T, index=['actual'], columns=['predicted 1', 'predicted 2'])
print(labeledRowsCols)
         predicted 1  predicted 2
 actual          NaN          NaN
詹姆士

您可以为行和列设置分层索引。

import pandas as pd

df = pd.DataFrame([[3,1,0,3,1,0],[0,3,0,0,3,0],[2,1,3,2,1,3]])

col_ix = pd.MultiIndex.from_product([['Predicted: Set 1', 'Predicted: Set 2'], list('abc')]) 
row_ix = pd.MultiIndex.from_product([['True label'], list('abc')])
df = df.set_index(row_ix)
df.columns = col_ix

df
# returns:
             Predicted: Set 1       Predicted: Set 2
                      a  b  c                a  b  c
True label a          3  1  0                3  1  0
           b          0  3  0                0  3  0
           c          2  1  3                2  1  3

将其导出到 Excel 应该具有您的示例中的合并单元格。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章