2012年6月4日月曜日
awkで特定の列や行を抽出する
「テキトーな表」を使う
awkでタブ区切りファイルを開き、2列目と3列目だけを抽出して新規ファイルとして保存する。
awk 'BEGIN{FS="\t"; OFS="\t"} {print $2,$3}' dataA.txt > dataA_col23.txt
上を実行する際に、1行目(ヘッダー行)だけを省く
awk 'BEGIN{FS="\t"; OFS="\t"} {if(NR >= 2) {print $2,$3}}' dataA.txt > dataA_col23_noHead.txt
あるいは
awk 'BEGIN{FS="\t"; OFS="\t"} {if(NR != 1) {print $2,$3}}' dataA.txt > dataA_col23_noHead.txt
あるいは
awk 'BEGIN{FS="\t"; OFS="\t"} {if(NR > 1) {print $2,$3}}' dataA.txt > dataA_col23_noHead.txt
2列目がゼロより大きい行を抽出して保存する。
awk 'BEGIN{FS="\t"; OFS="\t"} $2 > 0' dataA.txt > dataA_2over0.txt
2列目と3列目を足した値を4列目として保存する。
awk 'BEGIN{FS="\t"; OFS="\t"} $4=$2+$3 {print $0}' dataA.txt > dataA_2plus3.txt
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿