pyorganoid
A Python package for the simulation of organoids for the purpose of studying Organoid Intelligence (OI) and Organoid Learning (OL).
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 5 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (17.2%) to scientific vocabulary
Keywords
Repository
A Python package for the simulation of organoids for the purpose of studying Organoid Intelligence (OI) and Organoid Learning (OL).
Basic Info
- Host: GitHub
- Owner: danielathome19
- License: bsd-3-clause
- Language: Python
- Default Branch: main
- Homepage: http://danielathome19.github.io/pyorganoid
- Size: 7.44 MB
Statistics
- Stars: 7
- Watchers: 2
- Forks: 1
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
PyOrganoid is the world's first* Python package for the simulation of organoids for the purpose of studying Organoid Intelligence (OI) and Organoid Learning (OL). It is designed to be simple to use and easy to extend with support for standard machine learning libraries such as TensorFlow, PyTorch, and Scikit-Learn (as well as ONNX-format models).
- Documentation: https://danielathome19.github.io/pyorganoid
- Source code: https://github.com/danielathome19/pyorganoid
- Bug reports: https://github.com/danielathome19/pyorganoid/issues
- Contributing: CONTRIBUTING.md
It provides:
- a simple and intuitive API
- support for standard machine learning libraries
- a growing library of organoid models
- visualization tools for organoid simulation
- numerous simulation environments and scheduling algorithms
- TODO: support for parallel/distributed computing, bio/cheminformatics libraries, logging, and more
PyOrganoid is currently in development and may not yet be ready for production use. We are actively seeking contributors to help us improve the package and expand its capabilities. If you are interested in contributing, please see our contributing guide.
*As of July 6th, 2024, to the best of our knowledge :)

Installation
Pip
PyOrganoid can be installed (without built-in support for machine learning libraries) using pip:
bash
pip install pyorganoid
To include support for all machine learning libraries, use:
bash
pip install pyorganoid[all]
Or, to include support for a specific library (TensorFlow, PyTorch, Scikit-Learn, or ONNX), use:
bash
pip install pyorganoid[tensorflow]
pip install pyorganoid[torch]
pip install pyorganoid[sklearn]
pip install pyorganoid[onnx]
Conda
PyOrganoid can also be installed using conda:
bash
conda install -c danielathome19 pyorganoid
To include support for extras, use pip as described above.
Quickstart
For a quick introduction to PyOrganoid, see the Spiking Neuron Test in the test directory.
This test demonstrates the creation of a simple spiking neuron organoid running a binary classification Multi-Layer
Perceptron (MLP) model using TensorFlow.
If you prefer Scikit-Learn, PyTorch, or ONNX models, see the Volumetric Organoid Test (Scikit-Learn), the Gene Regulation Organoid Test (PyTorch), or the Immune Response Organoid Test (ONNX), respectively.
For example: ```python import pyorganoid as po
model = po.tfmodule.TFModel("model.h5") env = po.environments.Environment() organoid = po.organoids.SpikingNeuronOrganoid(env, model, numcells=50) organoid.plotorganoid(showproperties=True)
scheduler = po.simulation.Scheduler(organoid) scheduler.simulate(steps=100)
organoid.plotsimulationhistory(title="Spiking Neuron Organoid Simulation", y_label="Membrane Potential (mV)", dpi=600) ```
|
|
|
|
License
PyOrganoid is licensed under the BSD-3 License. See the LICENSE file for more information.
Citation
If you use this code for your research, please cite this project as:
bibtex
@software{Szelogowski_pyorganoid_2024,
author = {Szelogowski, Daniel},
doi = {10.48550/arxiv.2407.18413},
license = {BSD-3-Clause},
month = {jul},
title = {{pyorganoid: A Python package for the simulation of Organoid Intelligence (OI)/Organoid Learning (OL).}},
url = {https://github.com/danielathome19/pyorganoid},
version = {0.1.5},
year = {2024}
}
or as the corresponding research paper:
bibtex
@misc{Szelogowski_Simulation_of_Neural_Responses_Using_OI_2024,
author = {Szelogowski, Daniel},
doi = {10.48550/arxiv.2407.18413},
month = {jul},
title = {{Simulation of Neural Responses to Classical Music Using Organoid Intelligence Methods}},
url = {https://github.com/danielathome19/Pianoid-EEG-NN},
year = {2024}
}
Owner
- Name: Daniel J. Szelogowski
- Login: danielathome19
- Kind: user
- Location: Wisconsin
- Company: @MECS-Research-Lab
- Website: https://danielszelogowski.com/
- Twitter: DanielAtHome19
- Repositories: 50
- Profile: https://github.com/danielathome19
Standing on the shoulders of giants.
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Szelogowski" given-names: "Daniel" orcid: "https://orcid.org/0000-0002-0350-5771" title: "pyorganoid: A Python package for the simulation of Organoid Intelligence (OI)/Organoid Learning (OL)." type: software version: 0.1.5 doi: 10.48550/arxiv.2407.18413 license: BSD-3-Clause license-url: "https://github.com/danielathome19/pyorganoid/blob/main/LICENSE.md" date-released: 2024-07-06 url: "https://github.com/danielathome19/pyorganoid"
GitHub Events
Total
- Watch event: 3
- Fork event: 1
Last Year
- Watch event: 3
- Fork event: 1
Dependencies
- actions/checkout v2 composite
- actions/setup-python v2 composite
- goanpeca/setup-miniconda v2 composite
- peaceiris/actions-gh-pages v3 composite
- graphviz *
- matplotlib *
- numpy *