遇到了更改值和列名的问题,
例如,我有这样的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
所以我只需要更改年份和值,公司名称列应像样例一样放置
最简单的方法是什么?
答案 0 :(得分:2)
将pivot_table
与stack
结合使用:
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