Windows環境で作られたファイルをUTF-8に変換する場合、単純に
$ nkf -w --overwrite data.csv
とnkfコマンドを使って変換を行うと、「〜」が「〜」に変換されてしまいます。(他にも正しく変換できない文字がある)
これは、マイクロソフト仕様のCP932という名前のShift_JISコード体系をinput codesetに指定してあげるとよい。具体的には以下の通り。
$ nkf --ic=CP932 --oc=UTF-8 --overwrite data.csv
これで、「〜」が正しく変換された。