Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从带有sum函数的groupby数据框中排除日期列_Python_Pandas_Datetime_Merge_Group By - Fatal编程技术网

Python 从带有sum函数的groupby数据框中排除日期列

Python 从带有sum函数的groupby数据框中排除日期列,python,pandas,datetime,merge,group-by,Python,Pandas,Datetime,Merge,Group By,我有一个df,我将它摸索到另一个数据帧中,使用求和函数,它排除了一些列,但是date对于进一步的计算是至关重要的 grdf = df.groupby(['Year', 'Month', 'Percentage']).sum() grdf['Gross Sales'] = grdf['Gross Sales'].astype(float) grdf['Sum'] = grdf['Gross Sales'].cumsum() 追加、合并、重新索引、掩码、合并、concat、交集的最佳方式, 你能说

我有一个df,我将它摸索到另一个数据帧中,使用求和函数,它排除了一些列,但是date对于进一步的计算是至关重要的

grdf = df.groupby(['Year', 'Month', 'Percentage']).sum()
grdf['Gross Sales'] = grdf['Gross Sales'].astype(float)
grdf['Sum'] = grdf['Gross Sales'].cumsum()
追加、合并、重新索引、掩码、合并、concat、交集的最佳方式, 你能说出它的名字吗?我的datetime专栏


 -                         Net Units  Net Sales  Gross Sales     Sum  Payout
    Year Month Percentage                                                   
    2017 11    70%                 3     147.97       103.58  103.58  103.58
         12    70%                 1      24.99        17.49  121.07   17.49
    2018 1     70%                 2      49.98        34.99  156.06   34.99
         2     70%                 3      74.97        52.48  208.54  104.96
         3     70%                 1      24.99        17.49  226.03   17.49
         4     70%                 1      24.99        17.49  243.52   17.49
         8     88%                 2      89.98        79.18  322.71  114.17
         9     88%                 1      64.99        57.19  379.90   57.19
         10    88%                 3     104.97        92.37  472.27  149.56
         11    88%                 2      79.98        70.38  542.65   70.38
    2019 1     88%                 2      39.98        35.18  577.83  105.56

++++

我按月分组,所以我的数据是汇总的,行数不一样

使用聚合:


因此,您可以决定对每列使用哪种操作。您只需说出“日期”列的内容(首先可能还可以)。

原始数据帧是什么样子的?能否添加原始数据帧的示例?@Ghorich-Updated@先生-更新@jezrael-不幸的是不是,我按月分组(所以我的数据是汇总的),行数-与
'last'
不一样-工作非常完美!就像我想要的,谢谢你^___^

          Day                     Product Base Price  Net Units  Net Sales  Gross Sales Percentage  Year  Month   Payout     Pay Day
0  2017-11-11         asdasdasdnts     $69.99          1      69.99      48.9930        70%  2017     11        x           x
1  2017-11-13         asdasdasdnts     $69.99          1      69.99      48.9930        70%  2017     11        x           x
2  2017-11-27         asdasdasdnts      $7.99          1       7.99       5.5930        70%  2017     11  103.579  2018-01-11
3  2017-12-06         asdasdasdnts     $24.99          1      24.99      17.4930        70%  2017     12        x           x
4  2018-01-03         asdasdasdnts     $24.99          1      24.99      17.4930        70%  2018      1        x           x
5  2018-01-17         asdasdasdnts     $24.99          1      24.99      17.4930        70%  2018      1        x           x
6  2018-02-10         asdasdasdnts     $24.99          1      24.99      17.4930        70%  2018      2        x           x
7  2018-02-19         asdasdasdnts     $24.99          1      24.99      17.4930        70%  2018      2        x           x
8  2018-02-28         asdasdasdnts     $24.99          1      24.99      17.4930        70%  2018      2  104.958  2018-04-14
9  2018-03-04         asdasdasdnts     $24.99          1      24.99      17.4930        70%  2018      3        x           x
10 2018-04-22         asdasdasdnts     $24.99          1      24.99      17.4930        70%  2018      4        x           x
11 2018-08-01         asdasdasdnts     $24.99          1      24.99      21.9912        88%  2018      8        x           x
12 2018-08-22         asdasdasdial     $64.99          1      64.99      57.1912        88%  2018      8  176.789  2018-10-06
13 2018-09-19         asdasdasdial     $64.99          1      64.99      57.1912        88%  2018      9        x           x
14 2018-10-15         asdasdasdial     $64.99          1      64.99      57.1912        88%  2018     10  114.382  2018-11-29
15 2018-10-23         asdasdasdnts     $24.99          1      24.99      21.9912        88%  2018     10        x           x
16 2018-10-26         asdasdasdock     $14.99          1      14.99      13.1912        88%  2018     10        x           x
17 2018-11-20         asdasdasdial     $64.99          1      64.99      57.1912        88%  2018     11        x           x
18 2018-11-20         asdasdasdock     $14.99          1      14.99      13.1912        88%  2018     11  105.565  2019-01-04
19 2019-01-04         asdasdasdnts     $24.99          1      24.99      21.9912        88%  2019      1        x           x
20 2019-01-04         asdasdasdock     $14.99          1      14.99      13.1912        88%  2019      1        x           x       

In : df = pd.DataFrame([[1, 2, 3],
                        [4, 5, 6],
                        [1, 5, 7]],
                        columns=['A', 'B', 'C'])                   

In : df
Out: 
   A  B  C
0  1  2  3
1  4  5  6
2  1  5  7

In : df.groupby('A').agg({'B':np.sum, 'C':'first'})
Out: 
   B  C
A      
1  7  3
4  5  6