sigur rósのライブのセットリストの推移をPythonを使って調べてみる、その2
前回の記事の続き。
最初に書いておきますが、この記事はたぶんあなたの時間を無駄にするだけです。
自分用の備忘録として残しています。
前回作成した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を使ってデータ分析をしていくことにする。
まずはデータのセッティング等から進めていく予定。