-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
52 lines (48 loc) · 1.4 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
from setuptools import setup, find_packages
from pybind11.setup_helpers import Pybind11Extension, build_ext
import os
__version__ = "1.0.1"
# Path to the C++ extension source files
cpp_source_dir = "cpp_functions"
eigen_include_dir = os.path.join(cpp_source_dir, "include")
ext_modules = [
Pybind11Extension(
"snn_functions",
[os.path.join(cpp_source_dir, "snn_cpp_functions.cpp")],
include_dirs=[
eigen_include_dir
],
define_macros=[("VERSION_INFO", __version__)],
extra_compile_args=['-std=c++11'],
),
]
setup(
name='ClustAssessPy',
version=__version__,
packages=find_packages(),
description='Python package for systematic assessment of clustering results stability on single-cell data.',
long_description=open('README.md').read(),
install_requires=[
'numpy',
'pandas',
'scanpy',
'umap-learn',
'seaborn',
'matplotlib',
'scipy',
'networkx',
'plotnine',
'pynndescent',
'leidenalg',
'louvain',
"igraph"
],
license='MIT',
author="Rafael Kollyfas",
author_email="[email protected]",
python_requires='>=3.7',
keywords=['clustering', 'stability', 'assessment', 'machine learning', 'graph', 'network', 'community', 'detection'],
ext_modules=ext_modules,
cmdclass={"build_ext": build_ext},
zip_safe=False,
)