如何为给定的条件语句分配列的值

如何为给定的条件语句分配列的值

我需要一个脚本来为给定条件参数的列分配值。具体来说,这是我的数据和我的情况

输入data.file

0.4
3.6
-2.4
0.1
-2.0
1.6
2.2
3.6

条件:如果data.file大于2(>2),则赋值R;如果da​​ta.file小于-2(<-2),则赋值S;如果da​​ta.file大于或等于-2且小于或,则赋值M等于 2 [-2,2]。

所需的输出文件out.file

0.4  M
3.6  R
-2.4 S
0.1  M
-2.0 M
1.6  M
2.2  R
3.6  R

答案1

逐行读取文件,检查该值是否属于给定类别并相应输出。

 awk '{if($1>2)print $1,"R"; else if ($1<-2)print $1,"S"; else print $1,"M"}'

相关内容