Ansatzの備忘録

勉強したことあるいはふと思い立ったこと

シェルワンライナー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)

としていたが、これだとそもそも欠損値として認識されることがないから全くうまくいかない。結合するキーを指定しただけでは欠損値があることがわからない。欠損値として認識させるには本来あるべきフォーマットをきちんと指定しないといけない。