Remove top and bottom for each column

Dear All

I was wondering if someone could help me in resolving an issue.

I have a file like this:

column1 column2
2    4
3    5   
8    9
0    12
0    0
0    0
9    0
87    0
1    0
1    0
1    0
4    0
7    0
8    3
90    45
5    56
5    6
3    6
3    6
1    0

Basically what I wish is to remove the top and bottom x% for each column (suppose in this case 10%) and obtain a file like this:
The 10% of 20(the number of rows) is 2 so I need to remove the top and bottom 2 valued for each column.

9    12
8    9
8    6
7    6
5    6
5    5
4    4
3    3
3    0
3    0
2    0
1    0
1    0
1    0
1    0
0    0

Where values "90","87", "0", "0" for first column and values "56","45", "0", "0" has been deleted.
The file contains more that 100 column.

Any suggestion?
Best

Giuliano

When removing arbitrary fields from rows, any correlation between rows and/or columns will be lost. Is that acceptable?

No problem, is not important the correlation.