書籍代の入力データを用意してみました
まだ、経費としてデータを追加してはいないんだけど、
取り込み用のファイルを作るためのデータを用意してみました。
データはこんな感じ。
$ cat book.txt
5/28,2625
5/28,3360
3/11,3780
・
・
・
ポイントは、年月日の年を省略したことです。
データベース的にはアレかもしれないですが、少しでも入力の手間を減らすために、
“2013”って名前のフォルダにでも入れて管理しようと思います。
そして今回は、このデータを使って何かやってみようと思います。
まずは、技術書の良くある値段Top5から。
use v5.10; use strict; use warnings; my %h = (); while (<>) { my @tmp = split /,/; my $price = int( $tmp[1] ); $h{$price}++; } my @sorted_keys = sort { $h{$b} <=> $h{$a} } keys(%h); foreach my $no (1..5) { my $price = $sorted_keys[$no - 1]; my $cnt = $h{$price}; say "$no : $price ($cnt)"; }
$ perl aaa.pl < book.txt
1 : 3360 (6)
2 : 3780 (6)
3 : 2310 (5)
4 : 2940 (5)
5 : 2730 (4)
もちろん、自分が買った本の中で、ですけど。(*1)
3,000円くらいだと、躊躇(ちゅうちょ)無くレジに持っていきますね。
技術書は大抵、3,000円ちょいっていうイメージがあって、
3,000円超えても仕方ないか、っていう感じなんですかね。
次は、月別に買った数を数えてみます。
use v5.10; use strict; use warnings; my @total = (); push @total, 0 for 0..12; while (<>) { my @tmp = split /,/; my ($MM, $dd)= split '/', $tmp[0]; $total[$MM]++; } foreach my $MM (1..12) { printf( "%2d: %s\n", $MM, '*' x $total[$MM] ); }
$ perl bbb.pl < book.txt
1: *****
2: *******
3: *******
4: **********
5: *****
6: ***
7: **
8: *
9: *****
10: ****
11: ******
12: ****
4月に何があったんですかね・・・。
これ、買った本のジャンルとか分かると、
この時期、何に興味を持ってたのとか、分かって良いのにって思いました。
こんな感じで、経理以外にも使えるようなデータにしておけば、
青色申告のデータ入力も少しはやる気が出るんじゃないですかね!
おしまい。
(*1) 1〜2割くらい、デザイン関係の本が含まれてる
Leave a Comment