Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,6 @@ Data/
Result/
runPermutation.py
CLPC/
altairThemes.py
altairThemes.py
ClumPyCells.egg-info/
build/
Empty file removed ClumPyCells/__init__.py
Empty file.
674 changes: 674 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

10 changes: 3 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,12 @@ ClumPyCells is publicly available at [GitHub](https://github.com/schwartzlab-met
git clone git@github.com:schwartzlab-methods/ClumPyCells.git
```

## 3. Installation

## 3. Required Packages

The following dependencies are required to run ClumPyCells. Install them using the `requirements.txt` file:
ClumPyCells can be installed from the base directory through:

```bash
pip install -r requirements.txt
pip install .
```

## 4. General Workflow
Expand Down Expand Up @@ -115,6 +114,3 @@ Analysis Code: [Github](https://github.com/schwartzlab-methods/ClumPyCells_paper
For more in-depth explanations of functions, please refer to the dedicated markdown files in the [documentation](https://github.com/schwartzlab-methods/ClumPyCells/tree/main/Documentation).

---



File renamed without changes.
144 changes: 144 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
[build-system]
requires = ["setuptools>=63"]
build-backend = "setuptools.build_meta"

[project]
name = "ClumPyCells"
version = "0.1.0"
requires-python = ">=3.10"
dependencies = [
"altair==5.4.1",
"anyio==4.6.0",
"appnope==0.1.4",
"argon2-cffi==23.1.0",
"argon2-cffi-bindings==21.2.0",
"arrow==1.3.0",
"asttokens==2.4.1",
"async-lru==2.0.4",
"attrs==24.2.0",
"autograd==1.7.0",
"autograd-gamma==0.5.0",
"babel==2.16.0",
"bayesian-optimization==2.0.3",
"beautifulsoup4==4.12.3",
"bleach==6.1.0",
"certifi==2024.8.30",
"cffi==1.17.1",
"charset-normalizer==3.3.2",
"colorama==0.4.6",
"colour==0.1.5",
"comm==0.2.2",
"contourpy==1.3.0",
"cryptorandom==0.3",
"cycler==0.12.1",
"debugpy==1.8.6",
"decorator==5.1.1",
"defusedxml==0.7.1",
"dtreeviz==2.2.2",
"ecos==2.0.14",
"executing==2.1.0",
"fastjsonschema==2.20.0",
"fonttools==4.54.1",
"formulaic==1.0.2",
"fqdn==1.5.1",
"graphviz==0.20.3",
"h11==0.14.0",
"httpcore==1.0.6",
"httpx==0.27.2",
"idna==3.10",
"iniconfig==2.0.0",
"interface-meta==1.3.0",
"ipykernel==6.29.5",
"ipython==8.27.0",
"isoduration==20.11.0",
"jedi==0.19.1",
"jinja2==3.1.4",
"joblib==1.4.2",
"json5==0.9.25",
"jsonpointer==3.0.0",
"jsonschema==4.23.0",
"jsonschema-specifications==2023.12.1",
"jupyter-client==8.6.3",
"jupyter-core==5.7.2",
"jupyter-events==0.10.0",
"jupyter-lsp==2.2.5",
"jupyter-server==2.14.2",
"jupyter-server-terminals==0.5.3",
"jupyterlab==4.2.5",
"jupyterlab-pygments==0.3.0",
"jupyterlab-server==2.27.3",
"kiwisolver==1.4.7",
"lifelines==0.30.0",
"markupsafe==2.1.5",
"matplotlib==3.9.2",
"matplotlib-inline==0.1.7",
"mistune==3.0.2",
"narwhals==1.9.0",
"nbclient==0.10.0",
"nbconvert==7.16.4",
"nbformat==5.10.4",
"nest-asyncio==1.6.0",
"notebook==7.2.2",
"notebook-shim==0.2.4",
"numexpr==2.10.1",
"numpy==2.1.1",
"osqp==0.6.7.post3",
"overrides==7.7.0",
"packaging==24.1",
"pandas==2.2.3",
"pandocfilters==1.5.1",
"parso==0.8.4",
"patsy==0.5.6",
"permute==0.2",
"pexpect==4.9.0",
"pillow==10.4.0",
"platformdirs==4.3.6",
"pluggy==1.5.0",
"prometheus-client==0.21.0",
"prompt-toolkit==3.0.48",
"psutil==6.0.0",
"ptyprocess==0.7.0",
"pure-eval==0.2.3",
"pycparser==2.22",
"pygments==2.18.0",
"pyparsing==3.1.4",
"pytest==8.3.4",
"python-dateutil==2.9.0.post0",
"python-json-logger==2.0.7",
"pytz==2024.2",
"pyyaml==6.0.2",
"pyzmq==26.2.0",
"qdldl==0.1.7.post4",
"referencing==0.35.1",
"requests==2.32.3",
"rfc3339-validator==0.1.4",
"rfc3986-validator==0.1.1",
"rpds-py==0.20.0",
"scikit-learn==1.5.2",
"scikit-survival==0.23.0",
"scipy==1.14.1",
"send2trash==1.8.3",
"setuptools==75.1.0",
"six==1.16.0",
"sniffio==1.3.1",
"soupsieve==2.6",
"stack-data==0.6.3",
"statsmodels==0.14.3",
"terminado==0.18.1",
"threadpoolctl==3.5.0",
"tinycss2==1.3.0",
"tornado==6.4.1",
"traitlets==5.14.3",
"types-python-dateutil==2.9.0.20240906",
"typing-extensions==4.12.2",
"tzdata==2024.2",
"uri-template==1.3.0",
"urllib3==2.2.3",
"wcwidth==0.2.13",
"webcolors==24.8.0",
"webencodings==0.5.1",
"websocket-client==1.8.0",
"wrapt==1.16.0",
]
description = "ClumPyCells is an open-source toolbox for spatial correlation analysis based on point processing methods. By addressing cell-size differences, ClumPyCells helps to avoid biases that arise from tissue heterogeneity. The tool package provides calculations for cell aggregations using mark correlation functions, as well as post-hoc analysis tools that summarize spatial features and provides proper visualizations."
readme = "README.md"
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
import pandas as pd
from matplotlib.lines import Line2D

# TODO: This does not allow the package to be imported without having this file
# in the correct location (which will not be possible for users)
# Make sure to resolve this issue before publishing!
with open("config.json", "r") as file:
config = json.load(file)
HOMEDIR = config["HOMEDIR"]
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
1 change: 1 addition & 0 deletions src/ClumPyCells/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from .ClumPyCells import *