semvec/pypi-packages huggingface dataset:
MAGOT2 2.0.1
"New, simpler toolkit for random common genomic analyses"
Requires Python: >=3.6

# MAGOT2
## Multitool for Analyzing Genomes or Transcriptomes II
### New, simpler toolkit for random common genomic analyses
A complete overhaul of the MAGOT toolkit. It will be a while before all functionality is ported over, but in the end it will be *so* much simpler and more elegantly written (and pip-installable).

## Instalation instructions:
```
pip install git+https://github.com/biorover/MAGOT2.git
```

## Usage:
```
#For list of subcommands, call:
MAGOT -h

#for subcommand help, call:
MAGOT <subcommand> -h
```
socket-asyncio-threaded 0.0.2
Send and receive data with asyncio in another single thread
Requires Python: >=3.7

# socket_asyncio_threaded

**socket_asyncio_threaded**, or *sockco* as I like to call it, is a python library to send and receive data with *asyncio.StreamReader, asyncio.StreamWriter* in another **single** thread.

## Simple Usage

```
import socket_asyncio_threaded.client as sockco

if __name__ == '__main__':
    client = sockco.SocketClient()

    # Choose a ReceiveHandler from sockco like RH_Splitter, RH_HeaderSize,
    # or implement your own handler
    client.start_async(MOCK_SERVER_ADDR, MOCK_SERVER_PORT, sockco.RH_Splitter())

    # Now do something you want and write data at any time
    client.write_async(bytes(f'ping\n', encoding='utf-8'))

    # When needed, just read a pack of data, no need to be concerned about when to receive
    msg = client.read_async()
```

## Background and Notes

This code is used in my project which needs to read and write data with socket occasionally. If only *asyncio* is used, the event loop needs to run in the main thread; and reading/writing data from different threads needs a little bit more resource than coroutine. So I decided to put them together, which is this library.

Some notes I'd like to mention:

* Only client-side is available, and the implementation of server-side is under schedule.

* The lifecycle of *SocketClient* is the same as *StreamReader*, so it is not allowed to write data after the receiving direction is closed, even if the sending direction is still open.

## About

Version: 0.0.2

Auther: S3Studio

Url: https://github.com/S3Studio/socket_asyncio_threaded

New issues are welcomed
batting-order-analysis 0.0.52
Analysis of different batting orders given a lineup
Requires Python: >=3.6

## Description
Simulates every possible batting order for a given lineup and displays summary statistics of
the average runs (over a number of games) of the orders, and specific information about the
top and bottom 5 orders. The user may choose how many games each order is simulated for,
which players are in the lineup, or what each player's PA outcomes are in a single game
(see sample files).

## Data Source
[Baseball Savant Custom Data](https://baseballsavant.mlb.com/leaderboard/custom?year=2021&type=batter&filter=&sort=0&sortDir=desc&min=50&selections=b_total_pa,b_single,b_double,b_triple,b_home_run,b_strikeout,b_walk,on_base_percent,on_base_plus_slg,b_catcher_interf,b_hit_by_pitch,b_out_fly,b_out_ground,b_out_line_drive,b_out_popup,r_caught_stealing_2b,r_caught_stealing_3b,r_caught_stealing_home,r_stolen_base_2b,r_stolen_base_3b,r_stolen_base_home,woba,pull_percent,straightaway_percent,opposite_percent,&chart=false&x=b_total_pa&y=b_total_pa&r=no&chartType=beeswarm)

## Major TODOs
1) Determine the accurate likelihoods of sacrifices and double plays for different out types
2) Enable some sort of pinch hitting scheme (right now, each player hits the entire game)
3) Enable some sort of pitcher dependent hitting results (even as simple as right-y/left-y;
    right now hitting stats are full season aggregates)
4) Include edge cases like stealing, wild pitches, etc.
5) More detailed data (i.e. did a double go to right or left field?)
6) Player specific data (i.e. how often does a player try to steal?)

## Installation
    pip install batting-order-analysis
[View on PyPI](https://pypi.org/project/batting-order-analysis/)

## Usage
driver.py and driver.ipynb supply a basic interface, check them out