【发布时间】:2020-06-07 18:27:42
【问题描述】:
我是 Python 新手,每天都在学习很多新东西!
我在 pandas 中按如下代码运行一个组,并注意到一些有趣的事情:-
df = pd.DataFrame({'Hospital' : ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C', 'C', 'C'],"Claim Type" : ['HHA', 'HSP', 'IP', 'OP', 'SNF', 'DAE', 'CAR', 'HHA', 'HSP', 'IP', 'OP', 'SNF', 'DAE', 'CAR', 'HHA', 'HSP'],"avg spend" : [52, 12, 2, 80, 1, 7, 487, 14, 12, 7973, 54, 12, 20, 1549, 972, 169]})
df = df.groupby(['Hospital','Claim Type']).mean()[{'avg spend'}].round(2)
avg spend
Hospital Claim Type
A HHA 52
HSP 12
IP 2
OP 80
B CAR 487
DAE 7
HHA 14
HSP 12
IP 7973
SNF 1
C CAR 1549
DAE 20
HHA 972
HSP 169
OP 54
SNF 12
当我将我聚合的列(此处的平均花费)括起来时,我得到一个格式化的输出(带有带状行),而不是将它括在大括号中。
只是想知道这里发生了什么(可能在后台)格式化输出。
【问题讨论】:
-
添加一些您对问题感兴趣的示例数据和输出。请没有图片。
-
df = pd.DataFrame({'Hospital' : ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B ', 'B', 'B', 'C', 'C', 'C', 'C', 'C', 'C'],"索赔类型" : ['HHA', 'HSP', ' IP'、'OP'、'SNF'、'DAE'、'CAR'、'HHA'、'HSP'、'IP'、'OP'、'SNF'、'DAE'、'CAR'、'HHA' , 'HSP'],"平均支出" : [52, 12, 2, 80, 1, 7, 487, 14, 12, 7973, 54, 12, 20, 1549, 972, 169]})
-
将这些详细信息添加到问题中。你可以从这里edit。
-
两种情况下的输出相同,抱歉不知道如何在没有图像的情况下显示,只是两种情况下的输出格式不同,因此我很好奇。
-
编辑了您的问题。在这种情况下,
[{'avg spend'}]输出是 dataframe ,而['avg spend']输出是系列。[{'avg spend'}]不是正确的方法,而是使用[['avg spend']]代替。 ;)