Saravanan666/pypi-org huggingface dataset:
Package: seqlabel
seqlabel: Flexible Rule-based Text Labelingseqlabelis a rule-based text labeling framework aiming at flexibility.InstallationTo install seqlabel:pipinstallseqlabelRequirementsPython 3.8+UsageFor a normal textFirst, import some classes.fromseqlabelimportTextfromseqlabel.matchersimportDictionaryMatcherfromseqlabel.entity_filtersimportLongestMatchFilter,MaximizedMatchFilterfromseqlabel.serializersimportIOB2SerializerInitializeTextby giving it a text you want to label over.text=Text("Tokyo is the capital of Japan.")Preparematchermatching supplied patterns. You can supply patterns via Hash Map mapping string sequences to the corresponding labels. You can define your own matcher by inheritingseqlabel.matchers.Matcher.Then, applymatcher.matchtotext.# Preparing Matchermatcher=DictionaryMatcher()# Adding patternsmatcher.add({"Tokyo":"LOC","Japan":"LOC"})# Matchingentities=matcher.match(text)Filter unwanted entities.LongestMatchFilterremoves overlapping entities and leaves longer entity.MaximizedMatchFilterremoves overlapping entities and leaves as many entities as possible. You can define your own filter by inheritingseqlabel.entity_filters.EntityFilter.filter_a=LongestMatchFilter()filtered_entities_a=filter_a(entities)filter_b=MaximizedMatchFilter()filtered_entities_b=filter_b(entities)Convert entities to IOB2 format after matching and filtering. Checkseqlabel.serializersout if you want to use other formats.serializer=IOB2Serializer()serializer.save(text,filtered_entities_a)For a tokenized textIf you want to process a tokenized text, you need to useTokenizedTextinstead ofText. You could import it as follows:fromseqlabelimportTokenizedTextInitializeTokenizedTextby giving ittokensandspace_afteryou want to label over.tokensis a list of strings andspace_afteris a list of boolean indicating whether each token has a subsequent space.tokenized_text=TokenizedText(["Tokyo","is","the","captial","of","Japan","."],[True,True,True,True,True,False,False])You can usematcher,filter, andserializerjust like a normal text, as shown above.# Mathcingentities=matcher.match(tokenized_text)# Filteringfiltered_entities=filter_a(entities)# Serializingserializer.save(tokenized_text,filtered_entities)
Package: seqlearn
seqlearn is a sequence classification toolkit for Python. It is designed to
extendscikit-learnand offer as similar as
possible an API.Compiling and installingGet NumPy >=1.6, SciPy >=0.11, Cython >=0.20.2 and a recent version of
scikit-learn. Then issue:python setup.py installto install seqlearn.If you want to use seqlearn from its source directory without installing,
you have to compile first:python setup.py build_ext --inplaceGetting startedThe easiest way to start using seqlearn is to fetch a dataset in CoNLL 2000
format. Define a task-specific feature extraction function, e.g.:>>> def features(sequence, i):
...     yield "word=" + sequence[i].lower()
...     if sequence[i].isupper():
...         yield "Uppercase"
...Load the training file, saytrain.txt:>>> from seqlearn.datasets import load_conll
>>> X_train, y_train, lengths_train = load_conll("train.txt", features)Train a model:>>> from seqlearn.perceptron import StructuredPerceptron
>>> clf = StructuredPerceptron()
>>> clf.fit(X_train, y_train, lengths_train)Check how well you did on a validation set, sayvalidation.txt:>>> X_test, y_test, lengths_test = load_conll("validation.txt", features)
>>> from seqlearn.evaluation import bio_f_score
>>> y_pred = clf.predict(X_test, lengths_test)
>>> print(bio_f_score(y_test, y_pred))For more information, see thedocumentation.
Package: seqlike
SeqLike - flexible biological sequence objects in PythonIntroductionA single object API that makes working with biological sequences in Python
more ergonomic. It'll handle anythinglike a sequence.Built around theBiopython SeqRecord class,
SeqLikes abstract over the semantics of molecular biology (DNA -> RNA -> AA)
and data structures (strings, Seqs, SeqRecords, numerical encodings)
to allow manipulation of a biological sequence
at the level which is most computationally convenient.Code samples and examplesBuild data-type agnostic functionsdeff(seq:SeqLikeType,*args):seq=SeqLike(seq,seq_type="nt").to_seqrecord()# ...Streamline conversion to/from ML friendly representationsprediction=model(aaSeqLike('MSKGEELFTG').to_onehot())new_seq=ntSeqLike(generative_model.sample(),alphabet="-ACGTUN")Interconvert between AA and NT forms of a sequenceBack-translation is conveniently built-in!s_nt=ntSeqLike("ATGTCTAAAGGTGAA")s_nt[0:3]# ATGs_nt.aa()[0:3]# MSK, nt->aa is well defineds_nt.aa()[0:3].nt()# ATGTCTAAA, works because SeqLike now has both repss_nt[:-1].aa()# TypeError, len(s_nt) not a multiple of 3s_aa=aaSeqLike("MSKGE")s_aa.nt()# AttributeError, aa->nt is undefined w/o codon maps_aa=aaSeqLike(s_aa,codon_map=random_codon_map)s_aa.nt()# now works, backtranslated to e.g. ATGTCTAAAGGTGAAs_aa[:1].nt()# ATG, codon_map is maintainedEasily plot multiple sequence alignmentsseqs=[sforsinSeqIO.parse("file.fasta","fasta")]df=pd.DataFrame({"names":[s.nameforsinseqs],"seqs":[aaSeqLike(s)forsinseqs],})df["aligned"]=df["seqs"].seq.align()df["aligned"].seq.plot()Flexibly build and parse numerical sequence representations# Assume you have a dataframe with a column of 10 SeqLikes of length 90df["seqs"].seq.to_onehot().shape# (10, 90, 23), padded if neededTo see more in action,
please check out thedocs!Getting StartedInstall the library withpiporconda.With pippipinstallseqlikeWith condacondainstall-cconda-forgeseqlikeAuthors@andrewgiessel@maxasauruswall@MihirMetkar@ndousis@ericmjlSupportQuestions about usage should be posed onStack Overflow with the #seqlike tag.Bug reports and feature requests are managed using theGithub issue tracker.Contributors ✨Thanks goes to these wonderful people (emoji key):Nasos Dousis💻andrew giessel💻Max Wall💻📖Eric Ma💻📖Mihir Metkar🤔💻Marcus Caron📖pagpires📖Sugato Ray🚇🚧Damien Farrell💻Farbod Mahmoudinobar💻Jacob Hayes🚇This project follows theall-contributorsspecification. Contributions of any kind welcome!
Package: seqlogic
Sequential LogicSequential Logic (seqlogic) is a logic simulation library.
It uses Python'sasync/awaitsyntax to model time,
and provides an N-dimensionallogicvecdata type for combinational logic.The API design is a work in progress, and documentation has not started.
See thetestsdirectory for example usage.InstallingSequential Logic is available onPyPI:$ pip install seqlogicIt supports Python 3.10+.DevelopingSequential Logic's repository is onGitHub:$ git clone https://github.com/cjdrake/seqlogic.gitRuntime dependencies are listed inrequirements.txt.
Development dependencies are listed inrequirements-dev.txt.
Package: seqm
seqmPython utilities for sequence comparison, quantification, and feature extraction.Installation~$pipinstallseqmDocumentationDocumentation for the package can be foundhere.UsageTheseqmmodule contains functions for calculating sequence-related distance and complexity metrics, commonly used in language processing and next-generation sequencing. It has a simple and consistent API that be used for investigating sequence characteristics:>>>importseqm>>>seqm.hamming('ATTATT','ATTAGT')1>>>seqm.edit('ATTATT','ATAGT')2>>>seqm.polydict('AAAACCGT'){'A':4,'C':2,'G':1,'T':1}>>>seqm.polylength('AAAACCGT')4>>>seqm.entropy('AGGATAAG')1.40>>>seqm.gc_percent('AGGATAAG')0.375>>>seqm.gc_skew('AGGATAAG')3.0>>>seqm.gc_shift('AGGATAAG')1.67>>>seqm.dna_weight('AGGATAAG')3968.59>>>seqm.rna_weight('AGGATAAG')4082.59>>>seqm.aa_weight('AGGATAAG')700.8>>>seqm.tm('AGGATAAGAGATAGATTT')39.31>>>seqm.zipsize('AGGATAAGAGATAGATTT')22It also has aSequenceobject for object-based access to these properties:>>>importseqm>>>seq=seqm.Sequence('AAAACCGT')>>>seq.hamming('AAAAGCGT')1>>>seq.gc_percent0.375>>>seq.revcomplementACGTACGT>>>seq.dna_weight3895.59>>># ... and so on ...All of the metrics available in the repository are listed below, and can also be found in theAPIsection of the documentation.Finally, all functions from theseqmmodule can be used at the command line:~$# calculate distance between sequences~$seqmeditAAAACCGTAAAAGCGT1~$# calculate gc percent of sequence~$seqmgc_percentAAAACCGT0.375~$# generate random sequence and pipe to `wrap` command~$seqmrandom--length10|seqmwrap--bases5-ATGGATATTASequence QuantificationFunctionMetricseqm.polydictLength of longest homopolymer for all bases in sequence.seqm.polylengthLength of longest homopolymer in sequence.seqm.entropyShannon entropy for bases in sequence.seqm.gc_percentPercentage of GC bases in sequence relative to all bases.seqm.gc_skewGC skew for sequence:  (#G - #C)/(#G + #C).seqm.gc_shiftGC shift for sequence: (#A + #T)/(#G + #C)seqm.dna_weightMolecular weight for sequence with DNA backbone.seqm.rna_weightMolecular weight for sequence with RNA backbone.seqm.aa_weightMolecular weight for amino acid sequence.seqm.tmMelting temperature of sequence.seqm.zipsizeCompressibility of sequence.Domain ConversionFunctionConversionseqm.revcomplementLength of longest homopolymer for all bases in sequence.seqm.complementLength of longest homopolymer in sequence.seqm.aaShannon entropy for bases in sequence.seqm.wrapPercentage of GC bases in sequence relative to all bases.seqm.likelihoodGC skew for sequence:  (#G - #C)/(#G + #C).seqm.qscoreGC shift for sequence: (#A + #T)/(#G + #C)Distance MetricsFunctionDistance Metricseqm.hammingHamming distance between sequences.seqm.editEdit (levenshtein) distance between sequencesUtilitiesFunctionUtilityseqm.random_sequenceGenerate random sequence.seqm.wrapNewline-wrap sequenceQuestions/FeedbackFile an issue in theGitHub issue tracker.
Package: seqmetric
seq is a seq eval package# -*- coding: utf-8 -*-importsysimportnumpyasnpsys.path.append('..')fromseqmetric.schemeimportIOBS,IOBES,IOB2fromseqmetric.metricsimportclassification_report,f1_score#场景1mode=2trues=[['O','O','B-MISC','I-MISC','B-MISC','O','O'],['B-PER','I-PER','O']]preds=[['O','O','B-MISC','I-MISC','B-MISC','I-MISC','O'],['B-PER','I-PER','O']]ifmode==0:scheme=IOBESelifmode==1:scheme=IOBSelse:scheme=IOB2f1=f1_score(trues,preds,average='weighted',scheme=scheme)report=classification_report(trues,preds,scheme=scheme,digits=4)print(f1)print(report)fromseqmetric.metricsimportpointer_report,report_metric,get_report_from_string,spo_report# 场景2label_list=['0','1']trues=[[(0,10,20),],[(0,10,20)],[],[(1,100,201)]]# label_id ,start ,endpreds=[[(0,10,20),],[],[(1,100,200)],[]]str_report=pointer_report(trues,preds,label_list)print(str_report)report=get_report_from_string(str_report)print(report)label_list=['0','1']trues=[[(0,10,0,20,30),],[(1,10,0,20,30),]]preds=[[(0,10,0,20,30),],[],]str_report=spo_report(trues,preds,label_list=label_list)print(str_report)
Package: seqnmf
Copyright (c) 2018 Contextual Dynamics LaboratoryPermission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the “Software”), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.Description: Python implementation of seqNMF.  For more information visithttps://github.com/ContextLab/seqnmf.
Platform: UNKNOWN
Package: seqpandas
SeqPandasImport genomic data to get a custom Pandas &amp; Biopython hybrid class object with fancy shortcuts to make Machine Learning preprocessing easy!Free software: MIT licenseDocumentation:https://seqpandas.readthedocs.io.InstallationpipinstallseqpandasUsageimportseqpandasasspd# Direct File Pathdf=spd.read_seq('file.fasta',format='fasta')df=spd.read_seq('file.sam',format='sam')df=spd.read_vcf('file.vcf',format='vcf')df=spd.read_bed('file.bed',format='bed')# Just need BioPython Seqs? No problem!seqrecords=spd.read('file.fasta',format='fasta')# Already Opened BioPython HandlefromBioimportSeqIOseqrecords=SeqIO.parse('file.fasta',format='fasta')df=spd.BioDataFrame.from_seqrecords(seqrecords)TutorialFor a complete walkthrough and to use it for a machine learning pipeline please follow thetutorial notebook.CreditsThis package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.History0.0.1 (2022-02-17)First release on PyPI.
Package: seqparser
SEQPARSERGet dependencies for a given package management system and a given package.InstallYou can installseqparsereither via pip (PyPI) or from source.
To install using pip:python3-mpipinstallseqparserOr manually:git clone https://github.com/remiflavien1/seqparser
cd seqparser   
python3 setup.py installUsageCLIFind commandSearch through all regex from regIndex.txt in test/random.txt$seqparserfind--all-fregindex.txt-stest/random.txt

validEmail:['sometest@gmail.com']ip_adress:['198.127.158.45','192.168.1.1']macAdress:['406068601171','454415000055','FF:FF:FF:FF:FF:FF','00:A0:C9:14:C8:29','00:00:5E:00:01:28','406067601871','006129876543','406017401951']bitcoin:['3npMjJYuAEGyZr1uLBsDWSwz1xuPzdxcL4Y','3cLwdE1xcNGpx3usW9jzYC3erDS3d','17ZtZF9r8BruWo62ddHYH6ucMVUfKQR','1kV8NfTA7X1bh5cPekpWmEfg6MiD','3QWz49mGLkg1gw9T8kUWV8TeCxFCJKpKmQ7','3XpULLXUcTpBp1VUh3aDYrkEymySWm8pjnJ','1j2Gjjehdi5KRQW3yHCEWjCHZpn9sxDupN','13rV3W8pVTKjYXVUK6eS9E4AyMn3YuEQa9E','39ui5NBjs82TkbTKrV2nkub4RX7hjDwdD','3935XvxKuSDXHgd1EyaNvUHUr78nspTLCBF','1XVLr6QYeCSFkAT2hc43uKrZEJsL','33689657852p1234AxX7kbN4K8D1f1m1rD7','1Wrcy4pXFfHJsr4xhATMQdqkMKsYgDPRjHu','197TPY8Rviih6ykQ6aikdc7p5gcJG','3DbEb6pqptsmmW5TnfpQ9Sd2fv47USFL','1MyXo1o3vPeWB1tDHfvKVrCmChCNJ','3E1DLQUmm7u2vePTa2Qz9LrUp2QnfvepQvc','1zsbg36cXCzD4kQpuhQUe1j2V2hPyntdsWH','1b61jMdJwGoejWTc1TF8Y23E722vn4RTa','3vkiwibfiwucd6vxijskbhpjdyajmzeor4m','1F1vvS15QLi7YE4nkYn239Wd5vDXL49Qs','1xk4RwYpaySpdCPmsh61FpWKuGr7K1Gvsfs','1zsbg36cXCzD4kQpuhQUe1j2V2hPyntdsWH','1b61jMdJwGoejWTc1TF8Y23E722vn4RTa']onion_v2:['c4i7yopvpo4p7cyd.onion']onion_v3:['jamie3vkiwibfiwucd6vxijskbhpjdyajmzeor4mc4i7yopvpo4p7cyd.onion']Search a specific regex fromregIndex.txtintest/random.txt$seqparserfind--partialip_adress-fregindex.txt-stest/random.txt

ip_adress:['198.127.158.45','192.168.1.1']List CommandJust list all the regular expression available in regIndex.txt$seqparserlist

validEmail
ip_adress
macAdress
bitcoin
onion_v2
onion_v3
...ROADMAPAdd support forPyre2Add support for other regex expression (mostly for OSINT)Add specific analysis on some regex  (with a --detail flag for example)Add a scoring feature based on exact matching and deviation from original regexAdd output exportAdd Web dashboard visualization
Package: seqPlot
SeqPlot=======Plot overview of Multiple Sequence Alignments (MSA) using colored boxes####################################### seqPlot.py######################################usage:seqPlot.py -f multifasta alignmentoptions:-f, --fasta=FILE    multifasta alignment (eg. "align.fas")[ -o, --outfile=STR   output file (png) ][ -c, --colorscheme=STR STR in ("default", "clustal", "lesk","cinema", "maeditor", "dna","aacid") ][ -x, --boxwidth=INT draw INT pixels per residue (x direction) ][ -y, --boxheight=INT draw INT pixels per residue (y direction) ]adding identifiers:[ -s, --show_names    also draw sequence ids ][ -F, --font_file=FONT path to truetype font (monospace fonts recommended) ]
Package: seqpool
SeqPoolPytorch library implementing pooling methods for sequences of embedding vectors.Installationpip install seqpool..or build from source ～UsageImport a sequence pooling layer and apply it to a(batch, length, embedding)shaped tensor:fromseqpoolimportCVTSeqPoolf=CVTSeqPool(128)x=torch.randn(4,1024,128)# for example, take x from a transformer's outputy=f(x)# (4, 1024, 128) -> (4, 128)Typical use-case is in the training of a smaller model using a pretrained
model's embeddings, for example a BERT-style model.VariantsEscaping the Big Data Paradigm with Compact TransformersarXivfromseqpoolimportCVTSeqPoolf=CVTSeqPool(in_dim=128)This paper proposes a number of improvements on Vision Transformers to improve
performance on low-data tasks. One improvement was a "SeqPool" mechanism.
A single linear layer produces a weighting for each sequence element, then
softmax is applied. This is then used to compute the weighted sum of all
embedding vectors. The intuition is that each sequence element does not contain
the same amount of entropy, and so allowing the model to construct its own
weighting on importance helps improve performance on the downstream task.ReferencesEscaping the Big Data Paradigm with Compact TransformersAli Hassani, Steven Walton, Nikhil Shah, Abulikemu Abuduweili, Jiachen Li, Humphrey Shi@article{hassani2021escaping,
  title={Escaping the big data paradigm with compact transformers},
  author={Hassani, Ali and Walton, Steven and Shah, Nikhil and Abuduweili, Abulikemu and Li, Jiachen and Shi, Humphrey},
  journal={arXiv preprint arXiv:2104.05704},
  year={2021}
}
Package: seqPresenceAbsence
seqPresenceAbsenceRequirementsPython >= 3.6Perl 5 (required for FASconCAT-G)ncbi-blast+(makeblastdb and blastn must be in your $PATH)MUSCLE(muscle must be in your $PATH)Installationpip install seqPresenceAbsenceUsageUsage: seqPresenceAbsence [OPTIONS]

  seqPresenceAbsence is a simple script for querying an input nucleotide
  FASTA file against a database of sequences. Will return an .xlsx and .csv
  report of presence/absence of the sequences. Version: 0.2.0.

Options:
  -i, --indir PATH           Path to directory containing FASTA files you want
                             to query  [required]
  -t, --targets PATH         Path to multi-FASTA containing targets of
                             interest  [required]
  -o, --outdir PATH          Root directory to store all output files
                             [required]
  -p, --perc_identity FLOAT  Equivalent to the -perc_identity argument in
                             blastn. Defaults to 95.00.
  -k, --keep_db_seqs         Set this flag to keep the target sequence in
                             addition to the query sequence from BLAST.
  -v, --verbose              Set this flag to enable more verbose logging.
  --version                  Specify this flag to print the version and exit.
  --help                     Show this message and exit.NotesThis package includes a distribution of FASconCAT-G v1.04, developed by Patrick Kück.ReferencesKück P., Meusemann K. (2010): FASconCAT: Convenient handling of data matrices. Mol. Phylogen. Evol. 56:1115-1118Edgar, R.C. (2004) MUSCLE: multiple sequence alignment with high accuracy and high throughput
Nucleic Acids Res. 32(5):1792-1797
Package: seqpro
SeqPro (Sequence processing toolkit)importseqproasspSeqPro is a Python package for processing DNA/RNA sequences, with limited support for protein sequences. SeqPro is fully functional on its own but is heavily utilized by other packages includingSeqData,MotifData,SeqExplainer, andEUGENe.All functions in SeqPro take as input a string, a list of strings, a NumPy array of strings, a NumPy array of single character bytes (S1) or a NumPy array of one-hot encoded strings. There is also emerging integration with XArray through theseqpro.xrsubmodule.Computational bottelnecks or code that is impossible to vectorize with NumPy alone are accelerated with Numba e.g. padding sequences, one-hot encoding, converting from one-hot encoding to nucleotides, etc.InstallationpipinstallseqproSequence cleaners (cleaners)Remove sequences with ambiguous bases# Paddingsp.pad_seqs(seqs,pad="right",pad_value="N",max_length=None)# One-hot encodingsp.ohe(seqs,alphabet=sp.alphabets.DNA)# Decode one-hot encodingsp.decode_ohe(ohe,ohe_axis=1,alphabet=sp.alphabets.DNA,unknown__char="N")# Reverse complementsp.reverse_complement(seqs,alphabet=sp.alphabets.DNA)# k-let preserving shufflingsp.k_shuffle(seqs,k=2,length_axis=1,seed=1234)# Calculating GC contentsp.gc_content(seqs,normalize=True)# Generating random sequencessp.random_seqs(shape=(N,L),alphabet=sp.alphabets.DNA,seed=1234)# Randomly jittering sequencessp.jitter(seqs,max_jitter=128,length_axis=1,seed=1234)Manipulating coverage# Collapse coverage to a given bin widthsp.bin_coverage(coverage,bin_width=128,length_axis=1,normalize=False)# Can jitter coverage and sequences so they stay alignedsp.jitter((seqs,coverage),max_jitter=128,length_axis=1,seed=1234)## One-hot encoding```pythonsp.ohe(seqs)Sequence analysis (analyzers)Calculate sequence properties (e.g. GC content)sp.gc_content(seqs)sp.nucleotide_content(seqs)More to come!All contributions, including bug reports, documentation improvements, and enhancement suggestions are welcome. Everyone within the community is expected to abide by ourcode of conductPreparing sequences for sequence-to-function models
Package: seqprops
Sequential properties - peptide representation schemeThis package contains implementation of sequential properties representation scheme from the paper "Sequential properties representation scheme for recurrent neural network based prediction of therapeutic peptides". If you use this package in your work, please cite it as below or use the citation option in the side menu.Otović, E., Njirjak, M., Kalafatovic, D., & Mauša, G. (2022). Sequential Properties Representation Scheme for Recurrent Neural Network-Based Prediction of Therapeutic Peptides. Journal of Chemical Information and Modeling, 62(12), 2961-2972.You can install this package manually from this repository or from PyPI repository withpip install seqpropsUsagefrom seqprops import SequentialPropertiesEncoder
encoder = SequentialPropertiesEncoder()
encoder.encode(["AA", "HTTA"])Minimal working exampleimport numpy as np
from sklearn.preprocessing import MinMaxScaler
from tensorflow import keras
from seqprops import SequentialPropertiesEncoder
from tensorflow.keras.models import Model
from tensorflow.keras.layers import Dense, Input, LSTM

# Some input data
sequences = ["AAC", "ACACA", "AHHHTK", "HH"]
y = np.array([0, 1, 1, 0])

# Encode sequences
encoder = SequentialPropertiesEncoder(scaler=MinMaxScaler(feature_range=(-1, 1)))
X = encoder.encode(sequences)

# Define a model
model_input = Input(shape=X.shape[1:], name="input_1")
x = LSTM(32, unroll=True, name="bi_lstm")(model_input)
x = Dense(1, activation='sigmoid', name="output_dense")(x)
model = Model(inputs=model_input, outputs=x)

# Model training
adam_optimizer = keras.optimizers.Adam()
model.compile(loss="binary_crossentropy", optimizer=adam_optimizer)
model.fit(
    X, y, 
)Available propertiesYou can list available properties with:print(encoder.get_available_properties())To manually select specific properties:encoder.select_properties(['MSWHIM_MSWHIM3', 'tScales_T1'])For automatic feature selection, the users are referred to functionfeature_selectionand usage examplehere
Package: seqpy
# pyseq## OverviewA place to store various python based sequence manipulation stuff.## InstallationShould be as simple asgit clonehttps://github.com/dparks1134/seqpy.gitcd seqpy
python setup.py install## Example usage>>> from seqpy.fastx import Fastx
>>> f = Fastx()
>>> f.revComp("AGCCTCCG")
'CGGAGGCT'## HelpIf you experience any problems using pyseq, open an [issue](https://github.com/dparks1134/seqpy/issues) on GitHub and tell us about it.## Licence and referencingProject home page, info on the source tree, documentation, issues and how to contribute, seehttp://github.com/dparks1134/seqpyThis software is currently unpublished## CopyrightCopyright (c) 2014 Donovan Parks. See LICENSE.txt for further details.