質問

  ID RT      EZ    Z0      Z1      Z2    RHO     PHE 

 1889  UN    NA  1.0000  0.0000  0.0000  0.8765  -1  
 1890  UN    NA  1.0000  0.0000  0.0000  0.4567  -1  
 1891  UN    NA  1.0000  0.0000  0.0000  0.0012  -1  
 1892  UN    NA  1.0000  0.0000  0.0000  0.1011  -1  

I would like to grep all the IDs that have column 'RHO' with value less than 0.2, and the other columns are included for the selected rows.

役に立ちましたか?

解決

Use awk directly by saying awk '$field < value':

$ awk '$7<0.2' file
 1891  UN    NA  1.0000  0.0000  0.0000  0.0012  -1  
 1892  UN    NA  1.0000  0.0000  0.0000  0.1011  -1  

As RHO is the column 7, it checks that field.

In case you just want to print a specific column, say awk '$field < value {print $another_field}'. For the ID:

$ awk '$7<0.2 {print $1}' file
1891
1892
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top