私は次のデータを持っています:
ID Affection rs3117294 rs2747453 rs2747454 rs2747457 rs3131888
D0024949 0 C_C A_G A_G A_A A_G
D0024302 0 A_C A_A A_G A_A A_A
D0023151 0 C_C A_G A_A A_A G_G
D0022042 0 A_C A_A G_G A_A A_A
D0021275 0 C_C A_G A_G A_A A_G
D0021163 0 A_A A_A G_G A_A A_A
D0020795 0 A_A A_A G_G A_C A_G
D0020691 0 A_A A_A G_G A_C A_G
D0019121 0 A_A A_A G_G C_C G_G
下線を空白に変更してC_CがCCになるようにしたいと思います。
どうすればいいですか?私が持っているすべてのデータに適用されるようにコードを一般化してください。
「私のコードではない」誰かから次の内容を受け取りましたが、 sed '1d' plink.raw | sed 's/_/ /g' > plinkv2.raw
不完全なデータを含む空のセルが表示されます。
ベストアンサー1
グヌsed
:
sed -itmp 's/\(\w\)_\(\w\)/\1 \2/g' file
file
元のファイルのバックアップを上書きして保存しますfile.tmp
。
POSIX sed
:
sed 's/\([[:alpha:]]\)_\([[:alpha:]]\)/\1 \2/g' file > file2
別のファイルにリダイレクトする必要があります。file2
必要な方はオリジナルにコピーしてください。
どちらも「逆参照」という概念を使用します。パターンに\(
..があるテキストは、等に置き換えることが\)
できます。\1
\2