at backyard

Color my life with the chaos of trouble.

sigur rósのライブのセットリストの推移をPythonを使って調べてみる、その2

前回の記事の続き。

shinshin86.hateblo.jp

最初に書いておきますが、この記事はたぶんあなたの時間を無駄にするだけです。
自分用の備忘録として残しています。

前回作成したCSVファイルを元に、各年毎のライブ演奏曲とその演奏曲数のリストを作る。

# -*- coding: utf-8 -*-
from collections import Counter
import pandas as pd


def data_aggregation():
    df = pd.read_csv("result/Setlist.csv", names=('Year', 'SongTitle'))
    for i in range(df.Year[len(df.Year) - 1], df.Year[0] + 1):
        print("Live Year => " + str(i))
        make_visualize(data_aggregation2(df[df.Year == i].values))


def data_aggregation2(df):
    setlist = []
    setlist_count = {}
    for i in df:
        setlist.append(i[1])
    counter = Counter(setlist)

    for songtitle, cnt in counter.most_common():
        setlist_count[songtitle] = str(cnt).rstrip("\n")

    df2 = pd.DataFrame(list(setlist_count.items()), columns=['SongTitle', 'Count'])

    return df2


def make_visualize(df):
    print(df.SongTitle + "    " + df.Count)
    return

if __name__ == '__main__':
    data_aggregation()

実にダサいんだが、下記のコマンドで集計したデータをテキストファイルに吐き出す。

python aggregate.py > result.txt

で、こんなテキストファイルが生成される。

Live Year => 1998
0     Svefn-g-englar    1
1         Ný Batterí    1
2    Flugufrelsarinn    1
3             Hafsól    1
dtype: object
Live Year => 1999
0            Dánarfregnir Og Jarðarfarir    1
1                             Hljómalind    1
2                          Feliz Navidad    1
3                                  Í Gær    1
4                          Ágætis Byrjun    1
5                                 Avalon    1
6                              Orrilagið    1
7                         Svefn-g-englar    4
8                                   Duet    2
9                             Nýja lagið    3
10                                 E-Bow    1
11                                   Von    2
12                       Flugufrelsarinn    1
13                                Hafsól    1
14                            Dauðalagið    2
15                           Olsen Olsen    1
16                            Ný Batterí    1
17                             Popplagið    3
18    Syndir Guðs (opinberun frelsarans)    2
19              Viðrar Vel Til Loftárása    1
dtype: object
Live Year => 2000
0                          Fjöll í austri    3
1                             Njósnavélin    8
2                                 Álafoss    8
3                               Mansöngur    2
4                                  Hafsól    7
5                         Svefn-g-englar    19
6                                    Duet    1
7                             Nýja lagið    16
8                             Dauðalagið    11
9                              Popplagið    13
10                                 Fyrsta    3
11               Viðrar Vel Til Loftárása    5
12            Dánarfregnir Og Jarðarfarir    2
13                                  Í Gær    2
14                              Samskeyti    1
15    Á ferð til Breiðafjarðar vorið 1922    1
16                                 E-Bow    19
17                                    Von    5
18                                 Avalon    1
19                            Olsen Olsen    8
20                      Bíum Bíum Bambaló    1
21                             Ný Batterí    3
dtype: object

ってか、こんなデータ分析するのに整形が必要な変なテキストデータ作って、こっからどう推移を調べていくのよ、俺。
と、作ってみて思ったのが、前回のsigur rósセットリストのブログ書いた後ぐらい。
一応個人の記録としてブログに残しておくが、やりたいことはこれじゃない。
目標を履き違えて、いかに短い時間でPythonスクリプトがかけるか?に全力を尽くした感がある。
コード汚いし。

というわけで、先日導入したre:dashを使ってデータ分析をしていくことにする。

shinshin86.hateblo.jp


まずはデータのセッティング等から進めていく予定。