使用数据透视表功能重命名行

问题描述 投票:0回答:2

我有一个 SQL 查询,引入具有两个列名称(模型和计数)的数据。下表显示了原始数据的示例输出:

型号
A 2
B 6
C 12
D 9

使用下面的代码我创建了一个数据透视表:

df = pd.DataFrame(data, columns=['Model', 'Counts'])
pivot_data = df.pivot_table(index=None, columns='Model', values='Counts')
total = df['Counts'].sum()
pivot_data['TOTAL'] = total
型号 A B C D 总计
2 6 12 9 29

我遇到的问题是我想用“计数”替换“模型”下面的空白文本,但是我理解它的方式是第一列的数据透视格式而不是实际数据。我尝试更改

columns = 'Model', 'Counts'
,但其作用如下所示:

型号 总计
计数

下面是我想要的预期结果/最终表格,所以我只想旋转表格的视图以水平阅读。

型号 A B C D 总计
2 6 12 9 29
python pandas pivot-table
2个回答
0
投票

也许你可以使用:

>>> df.set_index('Model').T.assign(TOTAL=lambda x: x.sum(axis=1))

Model   A  B   C  D  TOTAL
Counts  2  6  12  9     29

0
投票

首先创建数据框:

 df = pd.DataFrame({'Model': ['A','B','C','D'], 'Counts': [2,6,12,9]})
 print(df)

 pivot_data = df.pivot_table(index=None, columns='Model', values='Counts')
 total = df['Counts'].sum()
 pivot_data['TOTAL'] = total
 print(pivot)

© www.soinside.com 2019 - 2024. All rights reserved.