<commit_before>##About
**SOS** is a pipeline for *de novo* transcriptome assembly of one or more RNA-seq datasets.
It currently features:
* read reduction (under development)
* error correction with [SEECER](http://sb.cs.cmu.edu/seecer/)
* de novo assembly with [Oases](https://www.ebi.ac.uk/~zerbino/oases/)
* transcript quantification using [Sailfish](http://www.cs.cmu.edu/~ckingsf/software/sailfish/)
* automatic parameter estimation of kmer values for the assembly and error correction (under development)
* automatic installation
* config file support to streamline many datasets

#####Contact
For questions or suggestions regarding SOS please contact

* <NAME> (ddurai_at_contact.mmci.uni-saarland.de)
* <NAME> (mschulz_at_mmci.uni-saarland.de)

#####Version
Version 0.1

##Requirements
for SOS:

1.	64-bit linux operating system. 
2.	A physical memory of 12 GB or higher is recommended (more is always better!)
3.	[Jellyfish](http://www.cbcb.umd.edu/software/jellyfish/) version 2.0  
4.	GNU Scientific Library (SEECER)
5.  Any version of [g++](gcc.gnu.org) >= 4.7 (Sailfish)


##Download
The pipeline can be downloaded using the following command:

    git clone https://github.com/SchulzLab/SOS

The downloaded folder should have the following files:

*pipeline.py
*sequence_cleaner.py
*install_script.py	
*export.sh
*config.txt	
*Jellyfish-2.0.0.tar
*Sample_Data (folder)

##Installation

1.	After downloading the SOS distribution, change into the directory
		cd SOS

2.	Then run the python script install_script.py to install the softwares (SEECER,OASES and SAILFISH)
		python install_script.py -f <destination_folder>
	This should install SEECER, OASES and SAILFISH in the provided destination folder. 
	Note: Running the script is optional. The users can download and install the softwares seperately  

3.	The PATH variable should contain executables of each software and the LD_LIBRARY_PATH variable should contain 'lib' folder of Sailfish.
	To make this process easier we have included a bash script export.sh. To use this script type the following command:
		source export.sh <folder_name>
	Note: To make use of this script all the softwares should be installed in the same directory (folder_name)

4.	To install jellyfish-2.0.0 unpack the .tar file
		tar -xvf jellyfish-2.0.0.tar
	change to the directory 
		cd jellyfish-2.0.0
	complie jellyfish
		./configure
		make
	set the PATH variable 
		export PATH=/install dir/:$PATH  

##Usage

To see the options available with the pipeline run the following command:
	python pipeline.py --help

	-h, --help            show this help message and exit
  	-o FOLDERNAME, --output=FOLDERNAME
        	                Output directory
  	-i INPUTNAME, --input=INPUTNAME
        	                Single end reads (comma seperated)
  	-l LEFT_NAME, --left=LEFT_NAME
        	                Left end reads (comma seperated)
  	-r RIGHT_NAME, --right=RIGHT_NAME
        	                Right end reads (comma seperated)
  	-t THRESHOLD, --threshold=THRESHOLD
        	                Threshold value for file reduction (optional)
  	-p PERC, --per=PERC   Percentage value for file reduction(optional)
  	-c CONFIG_FILE, --config=CONFIG_FILE
        	                Config file (required)
  	-s STEP, --step=STEP  The step you want start with (1-SEECER(default)
        	                2-OASES 3-SAILFISH)

######Sample commands : 
for single end : 
```
    python pipeline.py -i Sample_Data/SRR027877-small-p1.fastq -c config_s.txt -o Sample_Output
```
for paired end :   
```
	python pipeline.py -l Sample_Data/SRR027877-small-p1.fastq -r Sample_Data/SRR027877-small-p2.fastq -c config_p.txt -o Sample_Output
```

######Output Folder
The output folder will have a folders generated by the oases run and the folders generated by the sailfish run. 
It will also have a folder named Final_Output which will contain the following files :

1.	reads_corrected.fa (result of SEECER)
2.	transcripts.fa (result of OASES)
3.	quant.sf(result of SAILFISH)

If the read reduction option is used then the output folder will contain folder named *Jellyfish_Output* which stores the intermediate results generated by the read reduction step.

###Config files
Describe config file format

<commit_msg>fix readme<commit_after>##About
**SOS** is a pipeline for *de novo* transcriptome assembly of one or more RNA-seq datasets.
It currently features:
* read reduction (under development)
* error correction with [SEECER](http://sb.cs.cmu.edu/seecer/)
* de novo assembly with [Oases](https://www.ebi.ac.uk/~zerbino/oases/)
* transcript quantification using [Sailfish](http://www.cs.cmu.edu/~ckingsf/software/sailfish/)
* automatic parameter estimation of kmer values for the assembly and error correction (under development)
* automatic installation
* config file support to streamline many datasets

#####Contact
For questions or suggestions regarding SOS please contact

* <NAME> (ddurai_at_contact.mmci.uni-saarland.de)
* <NAME> (mschulz_at_mmci.uni-saarland.de)

#####Version
Version 0.1

##Requirements
for SOS:

1.	64-bit linux operating system. 
2.	A physical memory of 12 GB or higher is recommended (more is always better!)
3.	[Jellyfish](http://www.cbcb.umd.edu/software/jellyfish/) version 2.0  
4.	GNU Scientific Library (SEECER)
5.  Any version of [g++](gcc.gnu.org) >= 4.7 (Sailfish)


##Download
The pipeline can be downloaded using the following command:

    git clone https://github.com/SchulzLab/SOS

The downloaded folder should have the following files:

* pipeline.py
* sequence_cleaner.py
* install_script.py	
* export.sh
* config.txt	
* Jellyfish-2.0.0.tar
* Sample_Data (folder)

##Installation

1.	After downloading the SOS distribution, change into the directory
		cd SOS

2.	Then run the python script install_script.py to install the softwares (SEECER,OASES and SAILFISH)
		python install_script.py -f <destination_folder>
	This should install SEECER, OASES and SAILFISH in the provided destination folder. 
	Note: Running the script is optional. The users can download and install the softwares seperately  

3.	The PATH variable should contain executables of each software and the LD_LIBRARY_PATH variable should contain 'lib' folder of Sailfish.
	To make this process easier we have included a bash script export.sh. To use this script type the following command:
		source export.sh <folder_name>
	Note: To make use of this script all the softwares should be installed in the same directory (folder_name)

4.	To install jellyfish-2.0.0 unpack the .tar file
		tar -xvf jellyfish-2.0.0.tar
	change to the directory 
		cd jellyfish-2.0.0
	complie jellyfish
		./configure
		make
	set the PATH variable 
		export PATH=/install dir/:$PATH  

##Usage

To see the options available with the pipeline run the following command:
	python pipeline.py --help

	-h, --help            show this help message and exit
  	-o FOLDERNAME, --output=FOLDERNAME
        	                Output directory
  	-i INPUTNAME, --input=INPUTNAME
        	                Single end reads (comma seperated)
  	-l LEFT_NAME, --left=LEFT_NAME
        	                Left end reads (comma seperated)
  	-r RIGHT_NAME, --right=RIGHT_NAME
        	                Right end reads (comma seperated)
  	-t THRESHOLD, --threshold=THRESHOLD
        	                Threshold value for file reduction (optional)
  	-p PERC, --per=PERC   Percentage value for file reduction(optional)
  	-c CONFIG_FILE, --config=CONFIG_FILE
        	                Config file (required)
  	-s STEP, --step=STEP  The step you want start with (1-SEECER(default)
        	                2-OASES 3-SAILFISH)

######Sample commands : 
for single end : 
```
    python pipeline.py -i Sample_Data/SRR027877-small-p1.fastq -c config_s.txt -o Sample_Output
```
for paired end :   
```
	python pipeline.py -l Sample_Data/SRR027877-small-p1.fastq -r Sample_Data/SRR027877-small-p2.fastq -c config_p.txt -o Sample_Output
```

######Output Folder
The output folder will have a folders generated by the oases run and the folders generated by the sailfish run. 
It will also have a folder named Final_Output which will contain the following files :

1.	reads_corrected.fa (result of SEECER)
2.	transcripts.fa (result of OASES)
3.	quant.sf (result of SAILFISH)

If the read reduction option is used then the output folder will contain folder named *Jellyfish_Output* which stores the intermediate results generated by the read reduction step.

###Config files
Describe config file format


{'fraction_non_alphanumeric': 0.08314686138264045, 'fraction_numerical': 0.01366152396655282, 'mean_word_length': 3.4229166666666666, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 13, 'https://': 4, 'lorem ipsum': 0, 'www.': 6, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 10, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2691867', 'n_tokens_mistral': 2751, 'n_tokens_neox': 2570, 'n_words': 976}