![見出し画像](https://assets.st-note.com/production/uploads/images/153374109/rectangle_large_type_2_83fd2127824de836d49bf8367bcbe338.png?width=1200)
Amazonの購入履歴データを集計してみる
ぼよんは Amazon どっぷり生活を・・・10年以上やっております。
以前から、過去の取引履歴をチェックしたいなと思っていたのですが、やり方がよくわからずじまいでした。
やっと見つけたのでITネタで記事を書いてみす。それもプロ目線のな!
ざっくりやるので正確ではないです。
きっとぐぐればもっといい方法がみつかるはず。
独力かつクイックにやってみましょう。
Amazonから取引明細をゲットだぜ!
アカウントサービスの下のほう
![](https://assets.st-note.com/img/1725604906-2H3dLN1alBRIV6eg0PJhbUYS.png)
ここでデータをリクエストする。
すると、メールが飛んでくるのでリンクを開く。
![](https://assets.st-note.com/img/1725604875-UWRbLONADYcHIh36uqm4KsTG.png?width=1200)
2時間ぐらいでメールが届くのでリンクを開く。
![](https://assets.st-note.com/img/1725611446-UH6qBQl7yDnf9pEVN3xK58Wc.png?width=1200)
データ構造をチェック
zip ファイルの中身はこんなかんじでした。
![](https://assets.st-note.com/img/1725617645-Je0VroQvlnhE4T62Ra1gIwWf.png)
もうちょっと簡単なデータを期待してたんだけどなぁ。
上の Digital ~ は書籍関連です。
下の Retail.Transactional~は、個々の注文のPDFファイルです。いらぬ。
これらはとりあえず無視しよう。
Returnがついてるのは返品伝票です。
げげ、ひょっとして後で相殺しないとダメなパターンか?
Retail.OrderHistory.3.csv
これがメインとなる取引明細のようです。
中身を確認したところ、嫌なデータ仕様でした。
2023年に 中古のiPad Air の世代を間違えて注文し、返品して買いなおしたことがあるんです。
そのときの明細を見ると2件あった。
ここだけ見ると2台買ったように見える。
![](https://assets.st-note.com/img/1725618103-wmy26WJaEMRtUQLGFZ4kdTIN.png)
OrdersAndReturns.CSConcessions.Concessions.csv
返品のKEY情報らしい。右側にIDがあるのは交換先ってことかな。
![](https://assets.st-note.com/img/1725618372-53gmxZ8hK7jcLJ92aXfNS4Y0.png)
右側のID で上のcsv を検索すると、交換した覚えのある取引がでてきた。
再送分の金額は0になってる。
ということはだ!
No Replacement の場合の元データは返品してるので費用計上しないように無視しないといけないってことだ。
あぁ、めんどくせぇ。
Excel でクロス集計したいのよ
恥ずかしながら最近知ったんだが、ExcelにはPowerQueryなる便利ツールがあるらしい。
たぶん、ETLツールのようなDBのようなものだろう。
素データを直接加工するのではなく、加工設定を作りこむ感じです。
素データを入れ替えることで、繰り返し参照ができるのです。
中間加工データを保持しません。
統計解析のツール SPSS Stats とかに近いね。
CSVファイルを取り込むとこんな画面がでてきた。
![](https://assets.st-note.com/img/1725625239-taMcBXqhWg07kE59f1FeiuS8.png?width=1200)
使い方がわからん・・・。
おっちゃん、もう無理。
この手の操作は本職なので、何ができるのかはだいたい察しがつくんです。
しかし、さっぱり操作がわからん。
なんかめんどくさいなぁ。頭痛くなってきた。
データの一部にはおかしなものがあった。
とりあえず無視!
![](https://assets.st-note.com/img/1725626781-MmH0xUg6wcdaARQD2usByCz5.png)
ちゃちゃっと見たいだけなんよ
ピボットテーブルインポート という機能があった。これを使おう。
PwerQueryのデータソースをピボット展開してくれるようです。
![](https://assets.st-note.com/img/1725625535-RUepFxjATyQ8sBrbmhMLa0OH.png)
OrderDateを行に指定する。
Toral Owed の個数と集計する。
![](https://assets.st-note.com/img/1725626912-DZwa8GEk90uNWKoUL2lnpvBJ.png)
できた!!!
![](https://assets.st-note.com/img/1725626895-ac9ZD60srBomEdY4pyxR7O1N.png?width=1200)
おれは20年間で400万円もAmazonで買い物してることがわかりました。
というか、Amazonって20年前からあったんかい!
特に直近10年の金額がすっごいね。
以前はアマプラのレンタルビデオをよく借りてたっけ。
最近はKindleで漫画を買うようになりました。
なお、この合計には「返品」が加味されていません。
2023年に iPad Air を2台買ったことになってます。PowerQueryに返品テーブルを取り込んで、Joinして消しこんだクエリーを作ればよいのでしょうけど操作方法を見つけるのがめんどくさいし、少量なのでもういいや。
データの不満
商品分類があるといいのにねぇ~~~~~~。
今はレンタルやKindleしか判断できない。
AIっぽい処理が組める人は、商品名から商品分類や勘定科目を類推することで分類別の集計ができると思います。
でも、品目ごとに問い合わせすると待ち時間がながくなっちゃうよね。
ある程度は独自の辞書を定義してコネコネしたほうがよいと思います。
例えば、商品名にマキタとかMAKITA が含まれていたら、それは工具である。みたいな。
この部分は自分用にとっとかないといけません。
うなぎ屋の秘伝のタレみたいなもんです。
PwerQueryって、ちゃんと覚えると個人事業者や中小企業は便利かもしれないねぇ。
大手の企業だと、ちゃんとしたサーバー内のDBに格納するので使わないと思います。
おまけ
ぼよんは note でAmazonアソシエイツをやってます。
ここの記事で紹介した商品を購入してもらうと、おれの財布が潤います。
誰かこの腕時計をリンクから開いてぽちってください。
それは冗談ですが、
どういうわけか、最近よく売れるようになりました。
ほら、このグラフすごいでしょ!二日に1回ぐらい売れている。
![](https://assets.st-note.com/img/1725627156-pEaqtSznGAIdlsFxevr9TD1R.png?width=1200)
でもね・・・、金額的にはぜんぜん大したことない(笑)
![](https://assets.st-note.com/img/1725627238-8E6a7wz9sHPDmjMSBRKtnIAq.png)
おれの年間の購入金額ぐらい儲かったらいいよね!
ざっくり年間収支を書いてみると
支出 50万に対し、収入が 15000円ぐらい ってことか。
ぜんぜん賄えてない。。。
永久機関は程遠いぜ。
おしまい