METOT is a python application developed by Henri van de Geest at PRI and hosted on a local Linux server. As the name METOT indicates, the purpose of this application is to transform the MetAlign output files by filtering out the noise information. Basically it filters the MetAlign output files to reduce the noise. That means the unwanted data beyond a particular threshold is removed. Prior to this application the MetAlign output files were processed manually at PRI to filter the noise and was not only time consuming but also error prone. It is the much needed application for those who are using MetAlign. Currently 20 registered users have access to this application.
How to work with Metot:
A nice web interface is available through url:
Filtering: After the files are uploaded, the user can enter the desired parameters. These parameters are as follows: 1) "Number of samples above noise threshold": This parameter is used as a minimal threshold. A minimal nr of samples in each row must be higher than the noise value in the End_result_noise.csv file. If this threshold is not reached (ie most values are lower than noise) that particular row is invalid and therefore excluded. 2) "Minimal row value": Per row there must be at least one measurement above this value to treat the scan as valid. 3) "Percentage of noise for random amplitude.": When the measured amplitude is equal to the noise value, a random number is chosen for the new amplitude value. The range of this random number generation can be set with this paramter. When the percentage is set to 75% it is used as follows: Generate a random number between 75% of the noise value and 100% of the noise value. Usually, when the noise values are low, like 75, the percentage is left to 10%. With higher noise values the percentage can be set upto 99%.
Sample names: If the samplenames are given in the correct format, the output file (except the msclust output method) holds the samplenames and the entered annotation names. The format will look like this:
There are different files in the application package. The index.php file has the code for browsing the files , uploading. It is a java applet. Main.py is for processing. Getting input from the user . This Main.py has links to several modules 1. Engine.py – all the methods are written in this 2. Html.py – html display 3. DBconnect.py – for database interaction and queries 4. CreateFilesClass.py – to create output files and to insert the field values in .csv into db
In the excel sheets that METOT deal with, Y-axis is always peak number X- axis is always Sample number The row numbers should be same in all four files. The the data matrix should be same.
File uploading: The files are uploaded to the server. This is done through the java applet. Java applet makes connection to the apache server that we need separate application to upload the files. The code for this is written in index.php. And the authorization is hard coded in the program by MD5.
If we need to copy the web site to the other server then we need to take care of few important things. 1) Permissions should be given as mentioned below.
nobackup_files RWRWRW nobackup_endfiles RWRWRW
cgi-bin/logfile.txt RWRWRW ./cgi-bin/Main.py -x ./index.php -x
2) index.php: rewrite hardcoded path.
3) change database to metot in ./cgi-bin/config.conf
Go to MSClust
Go to NMC