将数据框值更改为列-列-更改为索引

时间:2019-10-30 12:28:20

标签: python pandas

遇到了更改值和列名的问题,

例如,我有这样的Pandas数据框:

       Value  2013  2014 Company Name
1  Employees    10    12     Aviators
2  Computers    20     2     Aviators
3  Employees     4    13       Mouses
4  Computers     1     8       Mouses
5   Monitors     5     1       Mouses

我需要将值设置为列,将年份设置为值或索引(更好的值),如下所示:

      Employees  Computers  Monitors Company name
2013         10         20       NaN     Aviators
2014         12          2       NaN     Aviators
2013          4          1       5.0       Mouses
2014         13          8       1.0       Mouses

所以我只需要更改年份和值,公司名称列应像样例一样放置

最简单的方法是什么?

1 个答案:

答案 0 :(得分:2)

pivot_tablestack结合使用:

ResourceItems

要删除列索引名称,请使用protocol ObjectConverterProtocol { var response : ResourceItems<DecodableObject> {get set} }

df = df.pivot_table(index=['Company Name'], 
                    columns='Value',
                    aggfunc='sum').stack(level=0).reset_index(level=0)

Value Company Name  Computers  Employees  Monitors
2013      Aviators       20.0       10.0       NaN
2014      Aviators        2.0       12.0       NaN
2013        Mouses        1.0        4.0       5.0
2014        Mouses        8.0       13.0       1.0