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 5 years have passed since last update.

python 勉強 pivot

Last updated at Posted at 2019-09-24

perlでpivotを行っていたが、
なんやかんやの理由でperlを実施できない状況になった。

現在の環境でできるのがpythonだったので、
ちょっとpythonの勉強をしてみようと思う。

※稼働環境は「visual studio」
※会社管理PCがwin10だからubuntuとかいれて実行したいけどPC環境を管理されてて導入説明がめんどい。。。

#1.きっかけ
今回データ解析しようと思ったのが、傾向がわからない業界に来てしまったため。
しかも、会社のデータをどう管理しているかも不明だったのでちょっと勉強がてら傾向観察のために集計しようと思ったのがきっかけ。

perlではこうだった、が頭にあるため、pythonでできるかよくわからん。。。

#2.csvの読み込み
いままでperlで行っていたのでここからよくわからなかった。。。

csv.readerで読み込むのはいいけど、、、
(perlでは読み込んでハッシュにため込んで集計ってやってた。。。)

#3.pandas
今回pivotだけだったので、↓で終わらしてしまった。。。


import numpy as np
import pandas as pd

df = pd.read_csv(r'インプットファイル', index_col=0).drop(['日時','企業名','支払','返金'], axis=1)

data = pd.pivot_table(df, index='種別',  columns='区分',  values='金額', aggfunc=[len,min, max,sum])

data2 = data.fillna(0)

data2.to_csv(r'アウトプットファイル')

pandasは便利ですね。
pivot_tableでaggfuncにて細かく見たい内容が決められるらしい。
ただ、ちょっとそのままだと集計に使用しづらいので「Nan」を「fillna(0)」で返還を実施。

#これからしたいこと

  • 小数点を整数にしたい。
  • 総計みたいなものが欲しい。
    • perlだと種別をキーにテーブルにいれてテーブル内を計算みたいにできてたかな?
    • pandasでなく辞書を利用すればいいのかしら?

まだまだ知識不足。

0
0
3

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?