semvec/pypi-packages huggingface dataset:
nammv 1.1.2
Camera connections and socket utils

# Installation
Responsitory [Github page](https://github.com/VanNamMan/test_builld_python_package)

    - Install from local responsitory:
    1.Clone Responsitory
    2.cd folder\
    3.pip install -e .\
# Camera
## Basler
Using open Basler camera
Reference [pypylon master](https://github.com/basler/pypylon)

    from connections import Basler
    # init camera
    camera = Basler()
    # open camera by index 0
    camera.open(0)
    # open camera by serinumber
    # camera.open('serinumber_here')
    # grab image
    mat = camera.grab()
    print(mat.shape)
    # close camera
    camera.close()
## Webcam
Using open Webcam or RTSP camera\
Reference [opencv video capture](https://docs.opencv.org/4.x/dd/d43/tutorial_py_video_display.html)

    from connections import Webcam
    # init camera
    camera = Webcam()

    # open camera by rtsp
    # camera.open('rtsp_link_here')
    # open camera by index 0
    camera.open(0)

    # grab image
    mat = camera.grab()
    print(mat.shape)

    # close camera
    camera.close()
# Socket utils
Some function help send image(numpy array) or text over socket client and server

    import socket
    import numpy as np
    from connections.socket_utils import send_text, send_image

    sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sk.connect(("localhost", 5000))

    # send text with length with format: {lenth}:text:{your_text}
    # ex client send "Hello", server revcieve "5:text:Hello"
    msg = time.strftime("Client sent %H:%M:%S\n")
    send_text(sk, msg)

    # send array with length with format: {lenth}:image:{your_array_encode}
    mat = np.random.radnint(0, 256, (640, 480, 3))
    send_image(sk, mat)
# Logger
Custom logger\
Reference [Logger console with color](https://stackoverflow.com/questions/384076/how-can-i-color-python-logging-output)\
Reference [Logging CookBook](https://docs.python.org/3/howto/logging-cookbook.html)

    from connections import Logger
    logger = Logger(name="mylog", 
                file_name="logfile.log", 
                file_level=logging.INFO,
                stream_level=logging.INFO)
    logger.info("this is info")
    logger.warning("this is warning")
    logger.error("this is error")
    logger.critical("this is critical")
noah-cli 0.2.0
a project management tool for reproducible, portable, and streamlined bioinformatics analysis
Requires Python: >=3.11,<4.0
Keywords: bioinformatics,project management

# Noah

Noah is a project management tool specifically designed for bioinformatics projects. It enables reproducible analysis of large datasets, making it effortless to share and collaborate with others.

[![PyPI version](https://badge.fury.io/py/noah-cli.svg)](https://badge.fury.io/py/noah-cli)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

# Features

- [x] A human-readable configuration file
- [x] Git integration
- [x] Guaranteed reproducibility and portability
- [ ] Managing data, containers, and workflows, all in one place

# Installation

The easiest way to install Noah is to use pip:

```bash
pip install noah-cli
```

# Quickstart

To get started with Noah, use the `noah init` command to create a new project:

```bash
noah init my_project # This will by default create a Git repository
cd my_project
```

To add a new dataset to your project, use the `noah add` command:

```bash
noah add SRP123456 # ENCSR123ABC, GSE123456, etc. are also supported
```

You can also add privately hosted datasets:

```bash
noah add me@some_host:path/to/my_dataset ftp://ftp.example.com/another_dataset
```

If you share your project with others, they can easily retrieve the datasets you added:

```bash
noah install
```

For more information, please refer to [examples](examples/README.md).

# License

This software is licensed under the MIT license. See [LICENSE](LICENSE) for more details.
phylotypes 1.0.0
Group phylogenetically placed sequence variants into phylotypes
Requires Python: >=3.6

# Phylotypes

Group features (e.g. 16s rRNA gene variable region sequence variants) placed on a common phylogenetic tree by phylogenetic distance.

This is particularly useful when attempting a metanalysis of 16s rRNA gene variable region amplicons, in which the amplicons were made with different primers, etc.

### Input:
`--jplace <file>` A jplace file (deduplicated) as made by [pplacer](https://matsen.fhcrc.org/pplacer/) or [epa-ng](https://github.com/Pbdas/epa-ng).

### Output:
`--out <file>` Path where the output should be placed in `CSV` format. This will be a header-containing CSV file in long-format with two columns: phylogroup and feature-id.

### Parameters:
`--lwr-overlap <0.0 - 1.0>` Minimum like-weight-ratio overlap for two placed features (e.g. sequence variants) to be pre-grouped. Default of 0.1 should be fine for most use cases.

`--threshold_pd <float>` Phylogenetic distance at which to cluster features. Default of 1.0 corresponds roughly to somewhere between species-level and genus-level grouping for 16s rRNA V4 region amplicons.
richviewsdk 1.0.7
Package to interact with RichView API.
Requires Python: >=3.9

# RichView Python SDK

This Python SDK allows you to interact with the RichView API to manage your reports. You can authenticate, retrieve, duplicate, update, and delete reports. You can also manage the charts within the reports.

## Installation

To install the SDK, you can use pip:

```bash
pip install richviewsdk
```

## Usage

Here is a typical use case:

```python
# Import necessary libraries
import pandas as pd
import numpy as np
from richviewsdk import RichViewSession, ParagraphBlock

# Step 1: We authenticate using our PW and Password
with open('pws.txt') as f:
    email, password = f.read().split(',')
session = RichViewSession.authenticate_with_password(email, password)

# Step 2: Lets retrieve all the RichView reports in our account
reports = session.get_reports()

# Step 3: Lets choose the report named GummiesJune23 of the reports and retrieves it
old_report = next(report for report in reports if report.title == 'GummiesJune23')

# Step 4: Lets duplicate the report and renames it GummiesJuly23
report = old_report.duplicate()
report = report.set_title('GummiesJuly23')

# Step 5: Lets query the report for all the charts
charts = report.get_charts()

# Step 6: Lets  now get the chart we want to update by it's ID
chart_id = [chart.block_id for chart in charts if chart.title == 'Gummy Bear Price Index'][0]
chart = report.get_chart(chart_id)

# Step 7: Lets retrieve the data of the chart to see how it's structured
old_data = chart.get_data()

# Step 8: Lets generate a fresh of data for the chart
# This is a placeholder, replace with actual data generation code
new_data = old_data.copy()  # replace with actual data generation code

# Step 9: Lets update the data of the chart and changes the chart type
all_data = pd.concat([old_data, new_data])
all_data = all_data.rename(
    columns={'Gummy Bear Price Index | Line': 'Gummy Bear Price Index | Area'})
chart = chart.set_data(all_data)

# Step 10: Lets update the title of the chart
chart = chart.set_title('Gummy Bear Price Index July Update')

# Step 11: Lets add a paragraph of the text
paragraph = ParagraphBlock(report.report_id, 'I can add some autogenerated text', session)
report.add_block(paragraph)
```

## Documentation

For more detailed documentation, please refer to the official RichView API documentation.

## Support

If you encounter any issues or have any questions, please contact our support team at support@therichview.com
cert-normalizer 1.0.0
Нормализатор сертификата в формате base64
Requires Python: >=3.10
Keywords: tools

# Certificate normalizer

Нормализатор сертификата электронной подписи (далее ЭП) в формате base64

Скрипт приводит содержимое сертификата ЭП в нормализованный вид.  
Добавляет `-----BEGIN CERTIFICATE-----` в начало файла и `-----END CERTIFICATE-----` в конец файла.  
Добавляет отступы каждые 65 символов для читаемости.

## Зависимости

Для реализации CLI интерфейса используется [typer](https://typer.tiangolo.com/)


## Установка модуля

```shell
pip install cert-normalizer
```

## Использование

```shell
python -m cert_normalizer path/to/cert.cer
```

Можно также указывать путь до директории. В таком случае скрипт будет искать все файлы сертификатов, заканчивающиеся на `.cer` и будет пытаться нормализовать их.
label-mapper 0.0.1
A spaCy extension to map NER labels.

Label Mapper is a spaCy factory that can receive a mapping dictionary that changes the labels for entities. It should come at the end of the pipeline or after the NER or EntityRuler.

# Installation

```bash
pip install label-mapper
```

# Usage

```python
nlp = spacy.load("en_core_web_sm")
label_map = {"GPE": "LOC"}
nlp.add_pipe(
            "label_fixer",
            last=True,
            config={"label_map": label_map}
            )
doc = nlp("We went into Yellowstone Park in Wyoming.")
for ent in doc.ents:
    print(ent.text, ent.label_)
```

Output:

```
Yellowstone Park LOC
Wyoming LOC
```
scltnn 0.1.0
A library to calculate the latent time of scRNA-seq
Requires Python: >=3.8

# scLTNN (single cell latent time neuron network)

[![Lifecycle:maturing](https://img.shields.io/badge/lifecycle-maturing-blue.svg)](https://www.tidyverse.org/lifecycle/#maturing) [![License:GPL](https://img.shields.io/badge/license-GPL-blue)](https://img.shields.io/apm/l/vim-mode) [![pypi-badge](https://img.shields.io/pypi/v/scltnn)](https://pypi.org/project/scltnn) [![bulid:passing](https://img.shields.io/appveyor/build/gruntjs/grunt)](https://img.shields.io/appveyor/build/gruntjs/grunt) [![Documentation Status](https://readthedocs.org/projects/scltnn/badge/?version=latest)](https://scltnn.readthedocs.io/en/latest/?badge=latest)

**A composite regression neural network for latent timing prediction of single-cell RNA-seq data**



[![ltnn](ltnn.png)](ltnn.png)

For more details, please check out our [publication](https://www.biorxiv.org/content/10.1101/2022.09.28.510020v1).

## Directory structure

````
.
├── scltnn                  # Main Python package
├── experiments             # Experiments and case studies
├── scltnn                  # the raw code of scltnn
├── model                   # the pre-model by ANN
├── source                  # Documentation files
├── LICENSE
└── README.md
````

## Installation

The `scLTNN` package can be installed via pip: 

```
pip install scltnn
```

## Usage

Please checkout the documentations and tutorials at [scltnn.readthedocs.io](https://scltnn.readthedocs.io/en/latest/index.html).

## Reproduce results

1. Follow instructions in `data` to prepare the necessary data, it can be download at https://figshare.com/articles/dataset/scltnn_data/20383416
2. Follow instructions in `experiments` for case studies

## Contact

- Zehua Zeng ([starlitnightly@163.com](mailto:starlitnightly@163.com))
pysetting 0.0.6
A python library for parsing and storing settings and configurations.
Requires Python: >=3.10


# pysetting

![GitHub](https://img.shields.io/github/license/shivanandvp/pysetting)
![GitHub release (latest by date)](https://img.shields.io/github/v/release/shivanandvp/pysetting)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/pysetting?link=https%3A%2F%2Fpypi.org%2Fproject%2Fpysetting%2F)](https://pypi.org/project/pysetting/)
[![Release](https://github.com/shivanandvp/pysetting/actions/workflows/release.yml/badge.svg)](https://github.com/shivanandvp/pysetting/actions/workflows/release.yml)
[![Pre-Release (Git)](https://github.com/shivanandvp/pysetting/actions/workflows/pre_release.yml/badge.svg)](https://github.com/shivanandvp/pysetting/actions/workflows/pre_release.yml)

## Overview

A python library for parsing and storing settings and configurations.

**Warning**: This package is still in the Beta stage. It is not ready for production use. Please do not use for any critical software

<!-- ## [PLEASE CLICK HERE](https://github.com/shivanandvp/pysetting/index.html) for the full documentation -->

## Cloning

In order to download the source code to your local computer for testing, or for development, you can clone from the remote repository using either SSH, or HTTPS. Below are instructions on how to do so using GitHub hosted code as remote.

### HTTPS

```bash
git clone https://github.com/shivanandvp/pysetting.git 
```

OR

### SSH

```bash
git clone git@github.com:shivanandvp/pysetting.git
```

## Packaging

Change to the project directory (`cd pysetting`) and run any of the below scripts:
- `sh packaging/setup.sh <MODE>`: Builds and installs a package
- `sh packaging/build-package.sh <MODE>`: Just builds a package without installing it locally
- `sh packaging/install-package.sh <MODE>`: Just installs a package locally, except if no built package is detected, a package is built.
 
OR

- `sh packaging_iso/setup.sh <MODE>`: Builds and installs a package
- `sh packaging_iso/build-package.sh <MODE>`: Just builds a package without installing it locally
- `sh packaging_iso/install-package.sh <MODE>`: Just installs a package locally, except if no built package is detected, a package is built.

where `<MODE>` can be one of the below
     1. `local`: Selects *pysetting-local* from the local project that you have cloned already.
     2. `git`: Selects *pysetting-git* from the latest git commit.
     3. `stable`: Selects *pysetting* from the git tag corresponding to the [`pkgver` specified in the PKGBUILD](https://github.com/shivanandvp/pysetting/blob/main/packaging/pysetting/PKGBUILD#L17). If `pkgver=0.1.2`, then the git tag `v0.1.2` is used for packaging. 
     
> **Note**: Any additional parameters passed to the above scripts are automatically sent to `makepkg` or `pacman` (whichever is applicable).
pyrunning 0.0.13
A python library to run and live-log OS commands, functions, scripts, and batch jobs either immedietly, or to be queued for later execution.
Requires Python: >=3.10


# pyrunning

![GitHub](https://img.shields.io/github/license/shivanandvp/pyrunning)
![GitHub release (latest by date)](https://img.shields.io/github/v/release/shivanandvp/pyrunning)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/pyrunning?link=https%3A%2F%2Fpypi.org%2Fproject%2Fpyrunning%2F)](https://pypi.org/project/pyrunning/)
[![Release](https://github.com/shivanandvp/pyrunning/actions/workflows/release.yml/badge.svg)](https://github.com/shivanandvp/pyrunning/actions/workflows/release.yml)
[![Pre-Release (Git)](https://github.com/shivanandvp/pyrunning/actions/workflows/pre_release.yml/badge.svg)](https://github.com/shivanandvp/pyrunning/actions/workflows/pre_release.yml)

## Overview

A python library to run and live-log *OS commands*, *functions*, *scripts*, and *batch jobs* either immedietly, or to be queued for later execution.

**Warning**: This package is still in the Beta stage. It is not ready for production use. Please do not use for any critical software

<!-- ## [PLEASE CLICK HERE](https://github.com/shivanandvp/pyrunning/index.html) for the full documentation -->

## Cloning

In order to download the source code to your local computer for testing, or for development, you can clone from the remote repository using either SSH, or HTTPS. Below are instructions on how to do so using GitHub hosted code as remote.

### HTTPS

```bash
git clone https://github.com/shivanandvp/pyrunning.git 
```

OR

### SSH

```bash
git clone git@github.com:shivanandvp/pyrunning.git
```

## Packaging

Change to the project directory (`cd pyrunning`) and run any of the below scripts:
- `sh packaging/setup.sh <MODE>`: Builds and installs a package
- `sh packaging/build-package.sh <MODE>`: Just builds a package without installing it locally
- `sh packaging/install-package.sh <MODE>`: Just installs a package locally, except if no built package is detected, a package is built.
 
OR

- `sh packaging_iso/setup.sh <MODE>`: Builds and installs a package
- `sh packaging_iso/build-package.sh <MODE>`: Just builds a package without installing it locally
- `sh packaging_iso/install-package.sh <MODE>`: Just installs a package locally, except if no built package is detected, a package is built.

where `<MODE>` can be one of the below
     1. `local`: Selects *pyrunning-local* from the local project that you have cloned already.
     2. `git`: Selects *pyrunning-git* from the latest git commit.
     3. `stable`: Selects *pyrunning* from the git tag corresponding to the [`pkgver` specified in the PKGBUILD](https://github.com/shivanandvp/pyrunning/blob/main/packaging/pyrunning/PKGBUILD#L17). If `pkgver=0.1.2`, then the git tag `v0.1.2` is used for packaging. 
     
> **Note**: Any additional parameters passed to the above scripts are automatically sent to `makepkg` or `pacman` (whichever is applicable).
videorotation 0.2.3
A module that allows to estimate whether video is flipped

### VideoRotation estimation using mobilenet v2  classificator <br>


## Setup: <br>

```
python3 -m pip install .
```
## Pre-requirements: <br>
ffmpeg is required <br>


## Usage: <br>
```
import argparse
from videorotation import VideoRotationAnalysis

def main(video_path):
    with VideoRotationAnalysis(frames_per_video=12, frames_threshold=8) as analysis: #how many frames to check, and how many frames should be flipped to say that video is flipped
        result, scores = analysis.check_if_upsidedown_for_video(video_path)
        print(result)

if __name__ == '__main__':
    parser = argparse.ArgumentParser(description='Analyze video rotation.')
    parser.add_argument('video_path', type=str, help='Path to the video file.')

    args = parser.parse_args()
    main(args.video_path)

```