Python Pandas<Pandas.core.groupby.DataFrameGroupBy对象位于…>

2024-09-29 19:25:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将相同的信息分组并计数成一行:

#Functions

def postal_saude ():
    global df, lista_solic

    #List of solicitantes in Postal Saude
    list_sol = [lista_solic["name1"], lista_solic["name2"]]

    #filter Postal Saude Solicitantes
    df = df[(df['Cliente']==lista_clientes["6"]) 
        & (df['Nome do solicitante'].isin(list_sol))]

    #Alphabetical order
    df = df.sort_index(by=['Nome do solicitante', 'nomeCorrespondente'])

    #Grouping data of column
    grouping = df.groupby('Tipo do serviços');

    print (grouping)


postal_saude()

当它到达df.groupby时,会引发一个错误

我尝试搜索相同的错误,但没有找到有效的答案来帮助我解决问题


Tags: ofdfdolistgroupbygroupingnomepostal
1条回答
网友
1楼 · 发布于 2024-09-29 19:25:29

请看一下关于Group By的文档

Group series using mapper (dict or key function, apply given function to group, return result as series) or by a series of columns

前一段摘自here

下面是一个简单的例子:

df = pd.DataFrame({'a':[1,1,1,2,2,2,3,3,3,3],'b':np.random.randn(10)})

df
   a         b
0  1  1.048099
1  1 -0.830804
2  1  1.007282
3  2 -0.470914
4  2  1.948448
5  2 -0.144317
6  3 -0.645503
7  3 -1.694219
8  3  0.375280
9  3 -0.065624

groups = df.groupby('a')

groups # Tells you what "df.groupby('a')" is, not an error
<pandas.core.groupby.DataFrameGroupBy object at 0x00000000097EEB38>

groups.count() # count the number of 1 present in the 'a' column
   b
a   
1  3
2  3
3  4

groups.sum() # sums the 'b' column values based on 'a' grouping

          b
a          
1  1.224577
2  1.333217
3 -2.030066

你明白了,你可以使用我提供的第一个链接从这里开始构建

df_count = groups.count()

df_count
   b
a   
1  3
2  3
3  4

type(df_count) # assigning the `.count()` output to a variable create a new df
pandas.core.frame.DataFrame

相关问题 更多 >

    热门问题