いかたけの備忘録

忘れっぽい

ちゃんとしたCSVをまれによく見る変なCSVに変形する。

神戸市 1544200 552.66 2794.1
姫路市 536270 534.44 1003.4

って表にまとめれば良いのに、たまに

神戸市 人口 1544200
面積 552.66
人口密度 2794.1
姫路市 人口 536270
面積 534.44
人口密度 1003.4

って書いてあるやつをまれによく見る。直すawk書こうと思ったけど、直る前のファイルが無かったらから、ちゃんとしたCSVファイルから崩す方のawk書いた。

BEGIN{
	FS = ","
}
{
	if (NR == 1){
		for (i = 1; i <= NF; i++){
			arr[i] = $i
		}
		next
	}
	print $1 "," arr[2] "," $2 
	for ( i = 3; i <= NF; i++){ 
		print "," arr[i] "," $i
	}
}

10行ぐらいで書けると思ったけど甘かった。今度は直す方書きたい。awk、長くなると負けみたいな感じで書いてる。