どのように私のグループとは、複数の列CSVファイルでを合計することができますか?

Bhobbl988:

私はまだのpythonとパンダと現在のCSVファイルで複数の列の合計を取得しようとする新たなんです。

私は合計するという列を持つCSVファイルを持っていますunitCountorderCountinvoiceCount

     date       id   name   unitCount   orderCount   invoiceCount
 2020-02-12     1   Guitar     200          100           200
 2020-02-12     2   Drums      300          200           100
 2020-02-12     3   Piano      400          700           300
 2020-02-11     1   Guitar     100          500           300
 2020-02-11     2   Drums      200          400           400
 2020-02-11     3   Piano      300          300           100

私の所望の出力は、(別にグループ化されたもの、最後の3列の合計がCSVファイルになりますID)のみ最新の日付にリンクされています:

     date       id   name   total_unitCount   total_orderCount   total_invoiceCount
 2020-02-12     1   Guitar        300              600                   500
 2020-02-12     2   Drums         500              600                   500
 2020-02-12     3   Piano         700              1000                  400

うの誰かが助けることができますか?

これまでのところ、私は以下しようとしていたが、それは私のために動作しません。追加することが可能となりgroupby、以下のコードの最初の行に?または私は完全に間違って始めましたか?ありがとう!

df = pd.read_csv(r'path/to/myfile.csv', sep=';').sum()
df.to_csv(r'path/to/myfile_sum.csv')
クアンホアン:

あなたはやや手動で行うことができますagg

(df.groupby('id', as_index=False)
   .agg({'date':'max', 'name':'first',
         'unitCount':'sum',
         'orderCount':'sum',
         'invoiceCount':'sum'})
   .to_csv('file.csv')
)

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=13457&siteId=1