如何重塑pandas DataFrame,将列名转换为值

时间:2015-03-29 15:59:49

标签: python pandas dataframe reshape

我有这个矩阵:

       columnA columnB ... columnX
index0 val0A   val0B   ... val0X
index1 val1A   val1B   ... val1X
...    ...     ...     ... ...
indexN valNA   valNB   ... valNX

我想以这种方式重塑pandas DataFrame:

       values  columns
index0A val0A   columnA
index1A val1A   columnA
...     ...     ...     
index0B val0B   columnB
index1B val1B   columnB
...
indexNX valNX   columnX

我如何实现它以及此转换的通常名称是什么?

1 个答案:

答案 0 :(得分:6)

我想你想要融化()

一个例子

df = pd.DataFrame({"A": [10,20,45,34,23], "B": [20, 30, 10, 40, 50]})
df

    A   B
0   10  20
1   20  30
2   45  10
3   34  40
4   23  50

pd.melt(DF)

    variable    value
0   A          10
1   A          20
2   A          45
3   A          34
4   A          23
5   B          20
6   B          30
7   B          10
8   B          40
9   B          50