semvec/pypi-packages huggingface dataset:
metmap 1.0.4
A tool for generating DNA MTase motif testing sequences
Requires Python: >=3.6

# metmap
DNA methyltransferase binding motif plasmid assembler

## Overall purpose:
* To identify the motifs of multiple DNA methyltransferases (DNA MTase) simultaneously.

### Quick start
* This script requires python 3.6 or newer.
* Install using "pip install metmap"
* This will put a script named "run_metmap.py" in your pythons bin folder.
  * Linux: You should just be able to type "run_metmap.py" from terminal
  * Windows: The script will be placed in your python folders "Scripts" subfolder and you can run it with "python path\to\python\Scripts\run_metmap.py" from command line
  * Mac: Who knows..probably works like linux?

### Test
You can download the tests/test_data.txt and run  
```run_metmap.py test_data.txt```  
This should generate a cas1.fa and cas1.gb file.

## Overview:
* You have an organism with multiple identified DNA MTases and you wish to know their individual motifs.
* You use NGS to obtain motifs of all methylated DNA sites.
  * Some of those motifs will contain ambiguous bases and some will not
* You submit those motifs to this program
* This program then stitches these motifs together in random order
* Motifs may contain ambiguous bases per the IUPAC nucleotide code
  * We can't synthesize lots of ambiguous bases, so we "de-ambigulate" them before putting them into the final construct.
  * De-ambigulation happens according to 1 of 2 rules:
    * Rule 1:
      * Pick L random variants of the motif. E.g. Motif ATGNNTTA have a total of 16 possible actual sequences. If L<16 then the program will random pick L variants (without duplicates). If L>16 then each possible variant will be picked at least L/16 times and some will be picked 1 more than that.
    * Rule 2:
      * Make K copies of each completely "de-ambigulated" variant: E.g. the sequence "SATC" will then be treated as 2 sequences: "GATC" and "CTAC" that will each appear in K copies.
* We put M N's between each motif
* And the program will output P versions of these cassettes
* You then clone this cassette into a plasmid with 1 DNA MTase in each plasmid.
* You then transform this library into an organism that doesnt natively methylate DNA.
* Grow, Harvest, Sequence plasmids.
* ?
* Profit!  


## Motif file format
* The motifs should be stored in a standard text file
* One motif per line, then a comma then a 1 or a 2 to indicate whether either rule 1 or 2 should be used for this motif
  Example:  
  ATGCATGCATGC, 1  
  STGCAGTCATCGTTK, 1  
  ATCNNNNAAA, 2  
  CGTAGCANNNATCGATGC, 2  


### IUPAC nucleotide code:
|code | nucs|
|:---:|:---:|
|R|A or G|
|Y|	C or T  
|S|	G or C  
|W|	A or T  
|K|	G or T  
|M|	A or C  
|B|	C or G or T  
|D|	A or G or T  
|H|	A or C or T  
|V|	A or C or G  
|N|	any base
interlegis.portalmodelo.buscadores 1.0rc5
Integração do Portal Modelo com buscadores externos.
Keywords: interlegis portalmodelo lexml search plone

**********************************
interlegis.portalmodelo.buscadores
**********************************

.. contents:: Conteúdo
   :depth: 2

Introdução
==========

Este pacote define portlets e browser pages especiais para integrar buscas,
dentro do Portal Modelo, dos seguintes sites externos:

* `LexML Brasil`_ (Rede de Informação Legislativa e Jurídica)
* `Buscador Legislativo`_ do Interlegis

As buscas são integradas através de ``iframes``.

.. _`LexML Brasil`: https://www.lexml.gov.br/
.. _`Buscador Legislativo`: http://busca.interlegis.leg.br/

Implementação
=============

A implementação das buscas é feita em duas partes: um portlet fornece um
formulário para realizar a busca e chama um browser page que inclui um iframe
com o link de resultados da busca no buscador especificado.

Portlets
--------

Os seguintes portles são registrados:

* ``interlegis.portalmodelo.buscadores.portlets.lexml`` para o `LexML Brasil`_
* ``interlegis.portalmodelo.buscadores.portlets.buscaleg`` para o
  `Buscador Legislativo`_

Browser pages
-------------

As seguintes browser pages de resultados são registradas:

* ``/lexml`` para o `LexML Brasil`_
* ``/buscaleg`` para o `Buscador Legislativo`_

Contributors
============

* Érico Andrei
* Héctor Velarde
* Jean Ferri
* Karyn Nassif
* Marcio Mazza


Changelog
=========

1.0rc5 (2018-12-17)
-------------------

- Changed URLs http to https in LexML
  [IolaneAndrade]


1.0rc4 (2015-08-26)
-------------------

- Fix product description on Plone installer
  [jeanferri]


1.0rc3 (2015-06-17)
-------------------

- Fix test test_setup.py
  [marciomazza]


1.0rc2 (2014-10-24)
-------------------

- Change IPloneSiteRoot to INavigationRoot to avoid intranet error
  [jeanferri]


1.0rc1 (2014-10-24)
-------------------

- Change portlet name translation
  [jeanferri]

- Refactoring portlets and insert its logo
  [jeanferri]

- Hide UpgradeStep from quickinstaller tool
  [ericof]


1.0b2 (2014-08-25)
------------------

- Ajustes na distribuição do pacote
  [ericof]


1.0b1 (2014-07-02)
------------------

- Primeiro release público.


1.0a1 (2014-03-17)
------------------

- Initial release.
RobotGrpc 1.2.1
robot grpc support

##  环境要求

- python >= 2.7
- pip
- node >= 10，设置环境变量保证`node -v`正常输出

## 安装
- `npm config set registry https://registry.npm.taobao.org && npm config set @yunke:registry https://registry-npm.myscrm.cn/repository/yunke/`
- `npm i -g robot-grpc`
- `pip install RobotGrpc`
- 如果使用Windows系统的RIDE，需要重启机器

## 使用示例

### robot脚本文件

```robot
*** Settings ***
Library   RobotGrpc      api.myscrm.cn:30051    https://git.myscrm.cn/jiangj01/panther-proto.git    f-20180508-project   b1wZx77sDx1YQPLyLww3

*** Test Cases ***
调用grpc方法
    ${res} =  invoke grpc method  article_project.ProjectArticleService.GetArticleInfo  { "sid": "12323553" }
    log  ${res}

执行所有用例
    run grpc cases  ${CURDIR}/GetArticleInfo.js

指定运行特定用例
    run grpc cases  ${CURDIR}/GetArticleInfo.js   case_name=正常    request={"正常":{"article_id":1}}

运行场景用例
    run grpc cases  ${CURDIR}/login.js
```

### GetArticleInfo.js

```js
const id = "article_project.ProjectArticleService.GetArticleInfo";

module.exports = {
  id: id,
  cases: {
    正常: {
      id: id,
      name: "正常",
      desc: 'desc',
      request: {
        "article_id": 0,
        "yk_org_code": "string",
        "project_id": 0
      },
      response: {
        "article_id": 0,
        "yk_org_code": "string",
        "user_id": 0,
        "title": "string", // 标题
        "thumbnail": "string",
        "publish_time": 0,
        "record_info": {
          "read_num": 0,
          "read_person_num": 0,
          "forwarded_num": 0,
          "forwarded_person_num": 0,
          "like_num": 0,
          "like_list": [{}]
        },
        "project_id": 0,
        "post_content": "string",
        "status": 0
      }
    },
    异常: {
      id: id,
      name: "异常",
      desc: '',
      request: {
        "article_id": 0,
        "yk_org_code": "string",
        "project_id": 0
      },
      response: {
        "article_id": 1,
        "yk_org_code": "string",
        "user_id": 0,
        "title": "string", // 标题
        "thumbnail": "string",
        "publish_time": 0,
        "record_info": {
          "read_num": 0,
          "read_person_num": 0,
          "forwarded_num": 0,
          "forwarded_person_num": 0,
          "like_num": 0,
          "like_list": [
            {
            }
          ]
        },
        "project_id": 0,
        "post_content": "string",
        "status": 0
      }
    }
  }
}

```


### login.js

```js
const GetArticleInfo = require('./GetArticleInfo');

module.exports = {
  id: 'login',
  cases: [
    GetArticleInfo.cases.正常,
    GetArticleInfo.cases.异常,
  ],
}

```