シェルワンライナー160本ノック問題53
問題53 欠損値の補完
問題のファイルは
https://github.com/shellgei/shellgei160
からダウンロードできる。
欠損値を補いつつうまくソートする問題だった。
自分の解答例は
join -a 1 -a 2 -o 1.2 0 2.2 -e @ <(sort -k2,2 devicelist.txt | awk '{print $2,$1}') <(sort -k1,1 measurement.txt) | sort
である。
最初自分は
join -a 1 -a 2 -1 2 -2 1 -e @ <(sort -k2,2 devicelist.txt) <(sort -k1,1 measurement.txt)
としていたが、これだとそもそも欠損値として認識されることがないから全くうまくいかない。結合するキーを指定しただけでは欠損値があることがわからない。欠損値として認識させるには本来あるべきフォーマットをきちんと指定しないといけない。