熊猫:折叠Multiindex数据框中的行

Mayank porwal

以下是我的df:

df = pd.DataFrame({'A': [1, 1, 1, 2],
                         'B': [2, 2, 2, 3],
                         'C': [3, 3, 3, 4],
                         'D': ['Cancer A', 'Cancer B', 'Cancer A', 'Cancer B'],
                         'E': ['Ecog 9', 'Ecog 1', 'Ecog 0', 'Ecog 1'],
                         'F': ['val 6', 'val 1', 'val 0', 'val 1'],
                         'measure_m': [100, 200, 500, 300]})

print(df)

   A  B  C         D       E      F  measure_m
0  1  2  3  Cancer A  Ecog 9  val 6        100
1  1  2  3  Cancer B  Ecog 1  val 1        200
2  1  2  3  Cancer A  Ecog 0  val 0        500
3  2  3  4  Cancer B  Ecog 1  val 1        300

当我pivot不通过索引而使用此df时,我得到以下信息:

In [1280]: df.pivot(index=None, columns = ['A', 'B', 'C', 'D', 'E', 'F'])
Out[1280]: 
  measure_m                           
A         1                          2
B         2                          3
C         3                          4
D  Cancer A Cancer B Cancer A Cancer B
E    Ecog 9   Ecog 1   Ecog 0   Ecog 1
F     val 6    val 1    val 0    val 1
0     100.0      NaN      NaN      NaN
1       NaN    200.0      NaN      NaN
2       NaN      NaN    500.0      NaN
3       NaN      NaN      NaN    300.0

我想要的4 rows不仅仅是1列的所有值的单行measure_m,如下所示:

  measure_m                           
A         1                          2
B         2                          3
C         3                          4
D  Cancer A Cancer B Cancer A Cancer B
E    Ecog 9   Ecog 1   Ecog 0   Ecog 1
F     val 6    val 1    val 0    val 1
0     100.0    200.0    500.0    300.0

怎么办呢?

广晃

你的意思是:

df.set_index(list(df.columns[:-1])).T

输出:

A                1                          2
B                2                          3
C                3                          4
D         Cancer A Cancer B Cancer A Cancer B
E           Ecog 9   Ecog 1   Ecog 0   Ecog 1
F            val 6    val 1    val 0    val 1
measure_m      100      200      500      300

更新一些修改以匹配您的输出:

cols = ['A', 'B', 'C', 'D', 'E', 'F']

(df.set_index(cols)
   [['measure_m']] # only need this if you have more columns
   .unstack(level=cols)
   .to_frame().T
)

输出:

  measure_m                           
A         1                          2
B         2                          3
C         3                          4
D  Cancer A Cancer B Cancer A Cancer B
E    Ecog 9   Ecog 1   Ecog 0   Ecog 1
F     val 6    val 1    val 0    val 1
0       100      200      500      300

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

折叠熊猫数据框中的行

来自分类Dev

折叠熊猫数据框数据集中的行

来自分类Dev

折叠熊猫数据框中的重叠颜色

来自分类Dev

在熊猫数据框中折叠带有NaN条目的行

来自分类Dev

熊猫,将MultiIndex数据框的某些列转换为行

来自分类Dev

在熊猫数据框中重新排序MultiIndex的级别

来自分类Dev

熊猫中数据框行中的数据框列

来自分类Dev

按重复范围折叠熊猫数据框

来自分类Dev

分组后折叠数据框熊猫

来自分类Python

熊猫数据框中的随机行选择

来自分类Dev

熊猫数据框中的按行操作

来自分类Dev

在熊猫数据框中查找重复的行

来自分类Dev

从熊猫数据框中永久删除行

来自分类Dev

数据框中特定行的总和(熊猫)

来自分类Python

修改熊猫数据框中的行的子集

来自分类Dev

从熊猫数据框中“丢弃随机行”

来自分类Dev

复制熊猫数据框中的行

来自分类Dev

从熊猫数据框中删除特定行

来自分类Dev

组合熊猫数据框中的行

来自分类Dev

如何合并熊猫数据框中的行

来自分类Dev

删除熊猫数据框中的行

来自分类Dev

映射熊猫数据框中的选定行

来自分类Dev

从熊猫数据框中删除特定的行

来自分类Dev

从熊猫数据框中删除相关行

来自分类Dev

卷起熊猫数据框中的行?

来自分类Dev

熊猫,如何访问multiIndex数据框?

来自分类Dev

熊猫数据框groupby在multiindex上

来自分类Dev

Python:基于MultiIndex的彩色熊猫数据框

来自分类Dev

通过聚合折叠多索引数据框中的行