簡體   English   中英

創建現有數據幀的以下數據幀

[英]create the following dataframe of exisitng dataframe

我需要選擇數據幀第一列的唯一值,並將它們作為第一列添加到第二個數據幀(新創建的)中 --> 然后添加與每個唯一相關的以下列。 我得到了如下內容

   First Field Name  Second Field Name
0                 1                 12
1                 2                 32
2                 3                  4
3                 2                 32
4                 3                 43
5                 4                 54
6                 3                 11
7                 2                 23
8                 1                 43

我需要以下內容

uniques       Sum     min    max    mean    std     ave
1             55      12     ...     ...    ...     ...
2             87      23
3             58      4
4             54      54

您可以使用聚合函數列表GroupBy.agg

(df.groupby('First field')
   .agg(['min','max','mean','std', ('ave', 'mean')])
   .droplevel(0, axis=1))

                min  max       mean        std     ave
FirstFieldName                                           
1                12   43  27.500000  21.920310  27.500000
2                23   32  29.000000   5.196152  29.000000
3                 4   43  19.333333  20.792627  19.333333
4                54   54  54.000000        NaN  54.000000

您應該將 groupby 函數與字典一起使用,您可以在其中告知要對 Second 字段執行的操作:

df= pd.DataFrame({'First field' : [1,2,3,2,3,4,3,2,1],
                  'Second Field':[12,32,4,32,43,54,11,23,43]})
df.groupby('First field').agg({'Second Field' : ['sum', 'min', 'max', 'std', 'mean']})

出去 :

                Second Field
                sum min max mean    std
First field                 
   1             55 12  43  27.500000   21.920310
   2             87 23  32  29.000000   5.196152
   3             58 4   43  19.333333   20.792627
   4             54 54  54  54.000000   NaN

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM