Walkthrough
A Guide to Using the HEK Program
This is just a walkthrough of how to use the algorithm, which is located in the executable file named "HEK.exe". The program is written in C++ and data must be inputed manually, i.e., using a C++ compiler. I used Dev-C++, which can be freely downloaded here.
Purpose and Converting Data
The purpose of the program is to take a set of known functional and nonfunctional strings of siRNA ("training" sets) and then a set of test strings with which we implement the algorithm in order to gauge its accuracy. The program itself is quite simple: The training sets and test set are manually inputed into the C++ file itself, then compiled, and the program will calculate the modified Levenshtein distance between each element of the test set and each element of both training sets. The data can then be outputed as a text file composed of four columns, separated by commas.
Note: To output HEK.exe data as text file, type in the command line: HEK > Directory\filename.txt
The four columns in the text file are as follows:
- The number of the test sequence
- The average of the modified Levenshtein distance between the test sequence and all of the training functional sequences
- The average of the modified Levenshtein distance between the test sequence and all of the training nonfunctional sequences
- The functionality of the test sequence, based on the previous two values: 0 denotes nonfunctional; 1 denotes functional
We then imported the text files in Excel and converted them to spreadsheets in order to better organize and analyze the data.
Convert the text files to spreadsheets by opening the text file through Excel and reading the file as comma delimited.
Explanation of Important Variables and Strings
The input data should be in three strings:
- A string of known functional siRNA:
Stored as char* BaseFunctional. - A string of known nonfunctional siRNA:
Stored as char* BaseNonfunctional. - A string of mixed functional/nonfunctional siRNA (randomly selected from our dataset in order to gauge the accuracy of the algorithm):
Stored as char* test.
In our case the data are all of length 19nt, since all HEK293 data were of this form. Below is a list of variables and their discriptors. These definitions are also contained in the .cpp file.
- compLength: The number of strings in the test set total.
- baseFunc: The number of functional strings in the training set.
- baseNonfunc: The number of nonfunctional strings in the training set.
These are the most important variables in the program.