<commit_before># BioPHP - PHP Bioinformatics class
BioPHP is an easy to use, open source project. BioPHP implements a selection of simple tools for manipulating genomic data. We're not doing any heavy lifting here (this is PHP). This class is built for basic RNA, DNA, and Protein manipulation. 

## Simple Usage:

### Find Reverse Complement
```php
$BioPHP = new BioPHP('ATGAAA');
$BioPHP->reverseSequence(); //reverse sequence
$BioPHP->complementDnaSequence(); //get the reversed complement
echo $BioPHP->sequenceA;
//prints TTTCAT
```

### Calculate GC Content
```php
$BioPHP = new BioPHP('ATGAAAGCATC');
echo $BioPHP->gcContent();
//prints 36.3636
```

### Count Point Mutations Between Two Sequences
```php
$BioPHP = new BioPHP('CTGATGATGGGAGGAAATTTCA','CTGATGATGCGAGGGAATATCG');
echo $BioPHP->countPointMutations();
//prints 4
```

### Translate DNA Sequence to Amino Acid Sequence
```php
$BioPHP = new BioPHP('CTGATGATGGGAGGAAATTTCAGA');
echo $BioPHP->translateDna();
//prints LMMGGNFR
```

### Calculate monoisotopic mass
```php
$BioPHP = new BioPHP('CTGATGATGGGAGGAAATTTCAGA');
$proteinSequence = $BioPHP->translateDna()."\n"; //translate sequence
echo $BioPHP->calcMonoIsotopicMass($proteinSequence)."\n"; //calculate mass
//prints 906.42041
```

### Finding a Motif in DNA
```php
$BioPHP = new BioPHP('ATAT', 'GTATATCTATATGGCCATAT');
echo $BioPHP->findMotifDNA();
//prints 3 9 17
```

### Get all three reading frames
```php
$BioPHP = new BioPHP('GTATATCTATATGGCCATAT');
print_r( $BioPHP->getReadingFrames() );

/*
* returns array containing...
Array
(
    [0] => GTATATCTATATGGCCATAT
    [1] => TATATCTATATGGCCATAT
    [2] => ATATCTATATGGCCATAT
)
*/
```<commit_msg>README update<commit_after># BioPHP - PHP Bioinformatics class
BioPHP is an easy to use, open source project. BioPHP implements a selection of simple tools for manipulating genomic data. We're not doing any heavy lifting here (this is PHP). This class is built for basic RNA, DNA, and Protein manipulation. 

## Simple Usage:

### Find Reverse Complement
```php
$BioPHP = new BioPHP('ATGAAA');
$BioPHP->reverseSequence(); //reverse sequence
$BioPHP->complementDnaSequence(); //get the reversed complement
echo $BioPHP->sequenceA;
//prints TTTCAT
```

### Calculate GC Content
```php
$BioPHP = new BioPHP('ATGAAAGCATC');
echo $BioPHP->gcContent();
//prints 36.3636
```

### Count Point Mutations Between Two Sequences
```php
$BioPHP = new BioPHP('CTGATGATGGGAGGAAATTTCA','CTGATGATGCGAGGGAATATCG');
echo $BioPHP->countPointMutations();
//prints 4
```

### Translate DNA Sequence to Amino Acid Sequence
```php
$BioPHP = new BioPHP('CTGATGATGGGAGGAAATTTCAGA');
echo $BioPHP->translateDna();
//prints LMMGGNFR
```

### Calculate Monoisotopic Mass
```php
$BioPHP = new BioPHP('CTGATGATGGGAGGAAATTTCAGA');
$proteinSequence = $BioPHP->translateDna()."\n"; //translate sequence
echo $BioPHP->calcMonoIsotopicMass($proteinSequence)."\n"; //calculate mass
//prints 906.42041
```

### Finding a Motif in DNA
```php
$BioPHP = new BioPHP('ATAT', 'GTATATCTATATGGCCATAT');
echo $BioPHP->findMotifDNA();
//prints 3 9 17
```

### Get Reading Frames
```php
$BioPHP = new BioPHP('GTATATCTATATGGCCATAT');
print_r( $BioPHP->getReadingFrames() );

/*
* returns array containing...
Array
(
    [0] => GTATATCTATATGGCCATAT
    [1] => TATATCTATATGGCCATAT
    [2] => ATATCTATATGGCCATAT
)
*/

//Protip: to get all 6 reading frames. Use the reverse and complement methods, then pass the result to getReadingFrames()
```
{'fraction_non_alphanumeric': 0.1468128064609172, 'fraction_numerical': 0.012979521199884627, 'mean_word_length': 5.363302752293578, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 29, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6450737', 'n_tokens_mistral': 1318, 'n_tokens_neox': 1134, 'n_words': 340}