awkさまさま
最近AWKが大活躍です
過去記事のメタプログラム的なシリーズでもチョチョイとAWKでスクリプト書いてますが、
更にチョチョイとcsvデータ変換プログラムを書きました
株のシステムトレードの運用は、まず株価データを入手するところから始まります
あるところからcsv形式でダウンロードできるのですが、時々トラブルでダウンロードできないことがあります(過去2回経験)
そういう時は、別のところから代用データをダウンロードしますが、データのフォーマットが異なります
前回はエクセルで、ちまちま手作業でフォーマット整えたのですが、
「あ、awkでやれば早いかも」と思いチョチョイとプログラムしたところうまくいった感じです
↑これを 変換して
こうするとそのまま使える
AWKプログラムはこんな感じ
#!/bin/awk
BEGIN {
FS=","
print "henkan"
print "コード,市場,銘柄名,業種,始値,高値,安値,終値,出来高,売買代金"
}
# 1,2行目を無視
NR>2 {
printf("%s-T,",$2)
printf("dummy,")
printf("dummy,")
printf("dummy,")
if ($4==0) {printf("-,")}
else {printf("%s,",$4)}
if ($5==0) {printf("-,")}
else {printf("%s,",$5)}
if ($6==0) {printf("-,")}
else {printf("%s,",$6)}
if ($7==0) {printf("-,")}
else {printf("%s,",$7)}
printf("%s,",$8)
printf("%d\n",($4+$7)*$8/2) #売買代金=(始値+終値)*出来高/2で代用
}
END {}
いやぁ、awkって便利