0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Python】データサイエンス100本ノック(構造化データ加工編) 023 解説

Last updated at Posted at 2020-08-09
  • データサイエンス100本ノックをやりきる会を作りました🎉
  • こちらのSlack招待URLからご参加ください!!
  • ぜひ一緒に励まし合いながら、データサイエンス100本ノックをやり切りたいと思っています!

##Youtube
動画解説もしています。

##問題
P-023: レシート明細データフレーム(df_receipt)に対し、店舗コード(store_cd)ごとに売上金額(amount)と売上数量(quantity)を合計せよ。

##解答

コード
df_receipt.groupby('store_cd').agg({'amount':'sum', 'quantity':'sum'}).reset_index()

##出力

store_cd amount quantity
0 S12007 638761 2099
1 S12013 787513 2425
2 S12014 725167 2358
3 S12029 794741 2555
4 S12030 684402 2403
5 S13001 811936 2347
6 S13002 727821 2340
7 S13003 764294 2197
8 S13004 779373 2390
9 S13005 629876 2004
10 S13008 809288 2491
11 S13009 808870 2486
12 S13015 780873 2248
13 S13016 793773 2432
14 S13017 748221 2376
15 S13018 790535 2562
16 S13019 827833 2541
17 S13020 796383 2383
18 S13031 705968 2336
19 S13032 790501 2491
20 S13035 715869 2219
21 S13037 693087 2344
22 S13038 708884 2337
23 S13039 611888 1981
24 S13041 728266 2233
25 S13043 587895 1881
26 S13044 520764 1729
27 S13051 107452 354
28 S13052 100314 250
29 S14006 712839 2284
30 S14010 790361 2290
31 S14011 805724 2434
32 S14012 720600 2412
33 S14021 699511 2231
34 S14022 651328 2047
35 S14023 727630 2258
36 S14024 736323 2417
37 S14025 755581 2394
38 S14026 824537 2503
39 S14027 714550 2303
40 S14028 786145 2458
41 S14033 725318 2282
42 S14034 653681 2024
43 S14036 203694 635
44 S14040 701858 2233
45 S14042 534689 1935
46 S14045 458484 1398
47 S14046 412646 1354
48 S14047 338329 1041
49 S14048 234276 769
50 S14049 230808 788
51 S14050 167090 580

##解説
・PandasのDataFrame/Seriesにて、同じ値を持つデータをまとめて処理する方法です。
・同じ値を持つデータの合計や平均などを確認したい時に使用します。
'groupby'は、同じ値や文字列を持つデータをまとめて、それぞれの同じ値や文字列に対して、共通の操作を(合計や平均など)行いたい時に使います。
'agg'は、Aggregationの略称(意味は"集合体")であり、グループごとに値を求めて表を作るような操作を行いたい時に使います。合計値は'sum'、平均値は'mean'、最大値は'max'、最小値は'min'です。
・'.reset_index()'は、'groupby'によってバラバラになったインデックス番号を0始まりの連番に振り直す操作を行いたい時に使います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?