特定の列に「1」の値を含む行でリストを作成する

特定の列に「1」の値を含む行でリストを作成する

特定の列に「1」を含む行のリストを含む2つのファイルを作成する必要があります。 1 つは列 4 "1" のファイルで、もう 1 つは列 5 "1" のファイルです。元のファイルは次のとおりです。

ID TreeID gC gD1 gD2.
36  1   0   0   0
36  2   1   0   0
36  3   1   0   0
36  4   1   0   0
36  5   1   0   0
36  6   0   0   1
36  7   1   0   0
36  8   1   0   0
36  9   1   0   0
36  10  1   0   0
36  11  1   0   0

私は次のことを考えています:

awk '$4%1' branch_36.cf.stat_tree.txt > gDF1_trees.txt

しかし、私はそれを動作させることはできません。私の出力は次のとおりです。

36  18  0   0   1
36  45  0   0   1
36  50  0   0   1
36  79  0   0   1

gDF2_trees.txt:

36  22  0   1   0
36  101 0   1   0
36  507 0   1   0
36  632 0   1   0

のためのgDF1_trees.txt

ベストアンサー1

4列目の変更を考えてみましたか?

sed -E 's/^(([^ ]* ){3})[^ ]* (.*$)/\11 \3/g'

列5を変更するには、中かっこ内の「3」を4に変更するだけです。

おすすめ記事