めも:perlでcsvデータ

最近あまりスクリプトを書いてなくて、いざ書こうと思ったら忘れていてビックリしたのでメモ。
csv(コンマ区切り)に限らずタブ区切りでも同じく。
DBIを使ってデータベースと同じように扱うモジュールもあるけど、そこまでのスペックは不要で、とりあえず目の前にあるエクセルや管理ページからダウンロードしたcsvを扱えればそれだけでOKというところ。
コンマやタブで区切られて、ヘッダがついていてデータが並んでいる
date,title,count,amount
2014/4/1,アロイのやさしい神さま,2,210
てな感じのデータ。
これを split してそのまま配列に入れればいいだけなんだけど、
my @w = split(’,’);
単純に区切りでバラして配列に入れただけだと、データを取り出す時に $w[1] などと書くことになる。それよりはハッシュ(連想配列)にして $_->{title} などとヘッダでつけた名前(キー)で取り出せた方が間違いも少ない。
ヘッダをキーにしてデータを入れて取り出せるようにするのが以下(改行やEncodeなどは省略)
my @head;
my @buf;
while(<IN>){
my %h;
my @w = split(/,/);
@head=@w , next if( ! @head );
@h{ @head } = @w;
push(@buf, \%h);
}
たぶんここがハッシュ(連想配列)の面白い書き方。
ヘッダ(文字)の配列をキーに、データの配列を値に一度に入れてしまう部分。
h{date} = ’2014/4/1’; h{title} = ’アロイのやさしい神さま’; h{count}=2; h{amount}=210;
↑と同じことを一行で↓
@{ h{ @head } }= @w;
これのおかげで、カラム数が100とか200とか多くてもへっちゃら。
@bufという配列に一行ずつハッシュとして入って、データの取り出しもキー(名前)でわかりやすく。
てのを、仕事でもプライベートでも何度もあちこちで使い捨てで書き散らしていたんだけど、メモがどこにも残ってなかったので改めて。
どうでもいいけど、「ハッシュ」って色気がないよなあ。せっかく「連想配列」というそそられる名前があるんだからこちらを使うべき。
[更新]2014-04-19 23:15:21
プラモデルカメラの威力だ

久々にプラモデルnの写真。花見のシーズンだったけど、天気がいまいちはっきりしなくて、「さくらーっ」という写真はなかったなぁ。
でも、そこはやはり1575円(税込み)のプラモデルカメラだ。色のしょぼさを補ってあまりある、妙な写真があがってきた。どこにきてるかわからないピント、画面周辺の歪み、などなど、なんでだか「懐かしい絵」になってんだよなぁ。

千鳥が淵。えーっと、これってどこにピントがきてるんだか何度見てもよくわからない。…ていうか、なんで画面の端にピントきてるんだ。
この日はホントはインド大使館のバザーに行く予定だったんだけど、雨の確率が50%以上、ということで延期されてた。

地元水元公園。相方とぶらぶら出かけてみた。チョー久しぶりにトラコン。水元公園はまっすぐ高く伸びた樹が多いので絵になるです。プラスチックカメラでゆがんでるし…
わたしのサイトは、アクセスログを見ると、FreeBSDとLibrettoのサイトか、トランジットコンパクトとか折りたたみ自転車のサイト、ということらしい。うううむ。今は読書SNSの方でひっかかってもらいたいんだけどねぇ。

同じ日の水元公園。これぞチープなプラスチックカメラの真骨頂。色あいも含めて、いまどきこんな絵の写真。

ジブリ美術館

井の頭公園。公園ってのはどこもいいよなぁ。目的が楽しむこと、で共通してるもんだから、ひとの顔がみんな柔らかいんだよねぇ。
[更新]2026-02-05 09:23:08
相場がよくわからんぞ

今朝はリサイクル屋(国分寺市サンエスサービス)に来てもらって見積もり。
エアコン外し8000円
エアコン処分3000円
コンポ1000円
パソコン本体1000
冷蔵庫4600円
電子レンジ2000円
洗濯機2400円
ベットマット6000円
リサイクル運搬費4000円
基本料金4000円
…の計3600円。
基本的には、げ、捨てるだけなのに高いじゃねいか?!と思ったんだけど、一度に片付く手間を金で買う、と思えばいいのかなぁ。ネットで検索してみると家電はほぼ相場。エアコンはちっと高いな。作業費はこの程度、か。
こういうの初めてだから値段・相場の見当もつかないのが弱み。
引越しの方は(ひまわり引越しセンター)あれこれ全部で76230円(2DKからの引越し)。これも微妙に高いような気がするけど、作業員が2人(計3人)必要ということでしかたないか、と。
合わせて112230円なり。今までの引越しの経験から、おおむね10万はいくな、と思ってたんだけど。
いや、引越しのたびに高いなぁこの値段ってどうなんだろう、と思ってるような気がする。初めて東京に来た時が赤帽のバンひとつだったんで余計にそう思うんだろうな。って、もう20年以上も前のこと・値段と比較してもしょうがないな。
ドタバタ慌しさの始まり、です。
[更新]2026-02-04 14:28:53
朝からゲロる

うううむ。久しぶりに記憶遮断→ゲロの飲みすぎコンボ炸裂。ダメージ120といったところか。まったく負荷がかかりすぎだっちゅーの。
夕方ようやく食欲が出て、立ち食いそばをぜいぜいしながらすすってひと息。
一の蔵は美味かったし、水菜・せり・トマト・チーズの温サラダが絶品だった。ごちそうさまでした。
てことで今日も、弁当、朝練はなし。いかんなぁ。おととい体重が59.6キロと微妙に60を切ったんだから、きちんと運動は持続しないと。目標58キロ代。
よれよれだし、今日はとっとと帰ってしまおう。
[21:24:18]
げ。飽食が祟ったか、帰って計ってみたら61.0キロ。愕然。明日からがむばろう。
人身事故車両だったかな

表紙レイアウトを写植屋入稿。いや、ほんとだったら、火曜の朝いちで入稿、というのがおれ予定だったんだけど、決まりきらず、今日にいたる。来週がピークだな。うーん。
今日の会議はとくに紛糾することもなく終了。とはいえ、あれとかこれとか、実はかなり切迫してきてるという事実。よわりめにあたりめたたりめぢゃ。
今年のおみくじが「凶」だったことを今になって思い出したりして。
んで。会議だし、路面は濡れてるし、遅刻しちゃいかんので今日は電車。…ひと駅行ったところで人身事故。どうもわたしの乗った電車っぽかった。窓の外は、線路を走り回る駅員に警官、救急隊員。駅を出ようかと動き出したところなので、飛びこみとかではなく本当に事故っぽかった、かな。
電車の中にいて、線路内の石ころを踏む足音がはっきり聞こえてくるとは思わなかった。なまなましい音だったなぁ。
ちなみに、ここんとこわたしは朝が早い。ので、かなり余裕を持って乗ったので、かなり停車したけど遅刻することはなかった。
明日は銀シャリで出社するべ。
[更新]2013-04-16 09:45:02

