semvec/pypi-packages huggingface dataset:
spPersist 1.2.4
Spatial transcriptomics with Persistent Homology
Requires Python: >=3.7

# Spatial transcriptomics with Persistent Homology

This is a package for classifying Spatial transcriptomics data according to its 
spatial topology. The specific mathematical foundation for the classification is
the theory of Persistent Homology and persistence diagram. The package 
contains a data processing module, called dp, allowing users to load either the
standard datasets from Visium and MERFISH, or published datasets into desired
annotated data format for the analysis performed in this package. The format is
compatible with the package Squidpy.

The package also includes a pre-processing module, a 
persistent homology module and a homological classification module, respectively
named pp, ph and hc.

The pre-processing module contains quality control metrics, deconvolution
methods and cell type identifications.

The persistent homology module contains functions for computing simplicial 
complexes of point clouds (See data structures in the gudhi package.) and their
topological measures. It also includes plotting features of the persistence 
diagram.

The homological classification module computes the number of holes and connected
components as a dictionary.
feo3mics 0.0.12
easy-to-use atomic integer and boolean operations for thread-safe programming
Requires Python: >=3.7

# feo3mics

[![PyPI version](https://badge.fury.io/py/feo3mics.svg)](https://badge.fury.io/py/feo3mics)

feo3mics is an easy-to-use atomics library for Python, providing atomic integer and boolean operations. It allows you to perform atomic operations on shared variables, ensuring thread-safety and preventing race conditions in concurrent programming. Everything is entirely lock-free and is backed by Rust's atomic types.

## Features

- Atomic integer operations: load, store, add, subtract, swap, compare and exchange, multiply, divide, increment, decrement.
- Atomic boolean operations: load, store, swap, compare and exchange, flip.

## Installation

```bash
pip install feo3mics
```

## Usage

See the [documentation](DOCS.md) for more information. Here's a quick overview:

### Atomic Integer

```python
from feo3mics import AtomicInt

# Create an atomic integer with an initial value of 0
atom = AtomicInt()

# Perform atomic operations
atom.store(10)
value = atom.load()
print(f"Value: {value}")

previous_value = atom.swap(20)
print(f"Previous Value: {previous_value}")

atom.add(5)
print(f"Result after addition: {atom}")

# Increment and decrement operations
atom.inc()
atom.dec()
```

### Atomic Boolean

```python
from feo3mics import AtomicBool

# Create an atomic boolean with an initial value of False
atom = AtomicBool()

# Perform atomic operations
atom.store(True)
value = atom.load()
print(f"Value: {value}")

previous_value = atom.swap(False)
print(f"Previous Value: {previous_value}")

result = atom.compare_exchange(False, True)
print(f"Swap Result: {result}")

# Flip the value of the atomic boolean
atom.flip()
```

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

## Acknowledgments

- The `feo3mics` library is heavily dependent on and inspired by the Rust `std::sync::atomic` module.