autogaita 1.5.4__tar.gz → 1.5.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {autogaita-1.5.4 → autogaita-1.5.6}/PKG-INFO +3 -3
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/group_3_PCA.py +16 -3
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita.egg-info/PKG-INFO +3 -3
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita.egg-info/SOURCES.txt +1 -0
- autogaita-1.5.6/autogaita_backup/backup_setup.py +44 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/pyproject.toml +3 -3
- {autogaita-1.5.4 → autogaita-1.5.6}/LICENSE +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/README.md +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/__main__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/batchrun_scripts/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/batchrun_scripts/dlc_multirun.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/batchrun_scripts/dlc_singlerun.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/batchrun_scripts/group_dlcrun.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/batchrun_scripts/group_universal3Drun.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/batchrun_scripts/sleap_singlerun.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/batchrun_scripts/universal3D_multirun.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/batchrun_scripts/universal3D_singlerun.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/common2D/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/common2D/common2D_1_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/common2D/common2D_2_sc_extraction.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/common2D/common2D_3_analysis.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/common2D/common2D_4_plots.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/common2D/common2D_constants.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/common2D/common2D_utils.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/dlc/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/dlc/dlc_main.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/group_1_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/group_2_data_processing.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/group_4_stats.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/group_5_plots.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/group_constants.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/group_main.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/group/group_utils.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/common2D_advanced_config_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/common2D_columninfo_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/common2D_gui_constants.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/common2D_gui_utils.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/common2D_main_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/common2D_run_and_done_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/dlc_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/dlc_gui_config.json +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/first_level_gui_utils.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/gaita_widgets.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/group_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/group_gui_config.json +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/gui_constants.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/gui_utils.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/main_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/sleap_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/sleap_gui_config.json +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/universal3D_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/gui/universal3D_gui_config.json +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/resources/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/resources/constants.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/resources/folder.png +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/resources/icon.icns +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/resources/icon.ico +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/resources/logo.png +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/resources/pic_to_demo_for_repo.png +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/resources/utils.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/sleap/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/sleap/sleap_main.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/__init__.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_1_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_2_sc_extraction.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_3_analysis.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_4_plots.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_constants.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_datafile_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_main.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_utils.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita.egg-info/dependency_links.txt +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita.egg-info/entry_points.txt +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita.egg-info/requires.txt +1 -1
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita.egg-info/top_level.txt +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita_backup/common2D_run_and_done_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita_backup/dlc_1_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita_backup/dlc_2_sc_extraction.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita_backup/dlc_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita_backup/sleap_1_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita_backup/sleap_2_sc_extraction.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/autogaita_backup/sleap_gui.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/setup.cfg +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_common2D_unit_1_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_common2D_unit_2_sc_extraction.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_common2D_unit_3_analysis.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_common2D_unit_utils.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_dlc_approval.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_dlc_unit_1_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_group_approval.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_group_unit.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_universal3D_approval.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_universal3D_unit_1_preparation.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_universal3D_unit_2_sc_extraction.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_universal3D_unit_3_analysis.py +0 -0
- {autogaita-1.5.4 → autogaita-1.5.6}/tests/test_utils.py +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: autogaita
|
|
3
|
-
Version: 1.5.
|
|
3
|
+
Version: 1.5.6
|
|
4
4
|
Summary: Automated Gait (and more!) Analysis in Python
|
|
5
5
|
Author-email: Mahan Hosseini <autogaita@fz-juelich.de>
|
|
6
|
-
License:
|
|
6
|
+
License-Expression: GPL-3.0-only
|
|
7
7
|
Project-URL: Homepage, https://github.com/mahan-hosseini/AutoGaitA/
|
|
8
8
|
Project-URL: Documentation, https://docs.google.com/document/d/1iQxSwqBW3VdIXHm-AtV4TGlgpJPDldogVx6qzscsGxA/edit?tab=t.0
|
|
9
9
|
Project-URL: YouTube, https://youtube.com/playlist?list=PLCn5T7K_H8K56NIcEsfDK664OP7cN_Bad&si=JBEYuzDDRe7qz5Qd
|
|
@@ -18,7 +18,7 @@ Requires-Dist: matplotlib>=3.7
|
|
|
18
18
|
Requires-Dist: scikit-learn>=1.2
|
|
19
19
|
Requires-Dist: pingouin>=0.5
|
|
20
20
|
Requires-Dist: scipy>=1.11
|
|
21
|
-
Requires-Dist: scikit-bio>=0.7.1
|
|
21
|
+
Requires-Dist: scikit-bio>=0.7.1; sys_platform == "darwin"
|
|
22
22
|
Requires-Dist: statsmodels>=0.14
|
|
23
23
|
Requires-Dist: ffmpeg-python>=0.2
|
|
24
24
|
Requires-Dist: openpyxl>=3.1
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
from autogaita.resources.utils import bin_num_to_percentages, write_issues_to_textfile
|
|
3
3
|
from autogaita.group.group_utils import save_figures
|
|
4
4
|
import os
|
|
5
|
+
import sys
|
|
5
6
|
import pandas as pd
|
|
6
7
|
import numpy as np
|
|
7
8
|
from sklearn.preprocessing import StandardScaler
|
|
8
9
|
from sklearn.decomposition import PCA
|
|
9
|
-
from skbio.stats.distance import DistanceMatrix, permanova
|
|
10
10
|
from scipy.spatial.distance import pdist, squareform
|
|
11
11
|
from statsmodels.stats.multitest import multipletests
|
|
12
12
|
import openpyxl
|
|
@@ -14,6 +14,14 @@ import seaborn as sns
|
|
|
14
14
|
import matplotlib.pyplot as plt
|
|
15
15
|
from matplotlib.animation import FuncAnimation, FFMpegWriter
|
|
16
16
|
|
|
17
|
+
# skbio throws some error on windows during build
|
|
18
|
+
skbio_available = sys.platform == "darwin"
|
|
19
|
+
if skbio_available:
|
|
20
|
+
try:
|
|
21
|
+
from skbio.stats.distance import DistanceMatrix, permanova
|
|
22
|
+
except ImportError:
|
|
23
|
+
skbio_available = False
|
|
24
|
+
|
|
17
25
|
# %% constants
|
|
18
26
|
from autogaita.resources.constants import (
|
|
19
27
|
ID_COL,
|
|
@@ -50,8 +58,13 @@ def PCA_main(avg_dfs, folderinfo, cfg, plot_panel_instance):
|
|
|
50
58
|
PCA_df, features = create_PCA_df(avg_dfs, folderinfo, cfg)
|
|
51
59
|
# run the PCA
|
|
52
60
|
PCA_df, PCA_info = run_PCA(PCA_df, features, folderinfo, cfg)
|
|
53
|
-
# run the PERMANOVA
|
|
54
|
-
|
|
61
|
+
# run the PERMANOVA - only on mac
|
|
62
|
+
if skbio_available:
|
|
63
|
+
run_PCA_PERMANOVA(PCA_df, folderinfo, cfg)
|
|
64
|
+
else:
|
|
65
|
+
write_issues_to_textfile(
|
|
66
|
+
"\nSkipping PCA PERMANOVA (skbio is broken on Windows).", folderinfo
|
|
67
|
+
)
|
|
55
68
|
# save PCA info to xlsx files
|
|
56
69
|
PCA_info_to_xlsx(PCA_df, PCA_info, folderinfo, cfg)
|
|
57
70
|
if PCA_info["number_of_PCs"] < 2:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: autogaita
|
|
3
|
-
Version: 1.5.
|
|
3
|
+
Version: 1.5.6
|
|
4
4
|
Summary: Automated Gait (and more!) Analysis in Python
|
|
5
5
|
Author-email: Mahan Hosseini <autogaita@fz-juelich.de>
|
|
6
|
-
License:
|
|
6
|
+
License-Expression: GPL-3.0-only
|
|
7
7
|
Project-URL: Homepage, https://github.com/mahan-hosseini/AutoGaitA/
|
|
8
8
|
Project-URL: Documentation, https://docs.google.com/document/d/1iQxSwqBW3VdIXHm-AtV4TGlgpJPDldogVx6qzscsGxA/edit?tab=t.0
|
|
9
9
|
Project-URL: YouTube, https://youtube.com/playlist?list=PLCn5T7K_H8K56NIcEsfDK664OP7cN_Bad&si=JBEYuzDDRe7qz5Qd
|
|
@@ -18,7 +18,7 @@ Requires-Dist: matplotlib>=3.7
|
|
|
18
18
|
Requires-Dist: scikit-learn>=1.2
|
|
19
19
|
Requires-Dist: pingouin>=0.5
|
|
20
20
|
Requires-Dist: scipy>=1.11
|
|
21
|
-
Requires-Dist: scikit-bio>=0.7.1
|
|
21
|
+
Requires-Dist: scikit-bio>=0.7.1; sys_platform == "darwin"
|
|
22
22
|
Requires-Dist: statsmodels>=0.14
|
|
23
23
|
Requires-Dist: ffmpeg-python>=0.2
|
|
24
24
|
Requires-Dist: openpyxl>=3.1
|
|
@@ -74,6 +74,7 @@ autogaita/universal3D/universal3D_constants.py
|
|
|
74
74
|
autogaita/universal3D/universal3D_datafile_preparation.py
|
|
75
75
|
autogaita/universal3D/universal3D_main.py
|
|
76
76
|
autogaita/universal3D/universal3D_utils.py
|
|
77
|
+
autogaita_backup/backup_setup.py
|
|
77
78
|
autogaita_backup/common2D_run_and_done_gui.py
|
|
78
79
|
autogaita_backup/dlc_1_preparation.py
|
|
79
80
|
autogaita_backup/dlc_2_sc_extraction.py
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# import
|
|
2
|
+
from setuptools import setup, find_packages
|
|
3
|
+
|
|
4
|
+
# list of across-platform dependencies
|
|
5
|
+
install_requires = [
|
|
6
|
+
"customtkinter>=5.2",
|
|
7
|
+
"pandas>=2.0,<3.0",
|
|
8
|
+
"numpy>=1.24",
|
|
9
|
+
"seaborn>=0.13",
|
|
10
|
+
"matplotlib>=3.7",
|
|
11
|
+
"scikit-learn>=1.2",
|
|
12
|
+
"pingouin>=0.5",
|
|
13
|
+
"scipy>=1.11",
|
|
14
|
+
"scikit-bio>=0.7.1",
|
|
15
|
+
"statsmodels>=0.14",
|
|
16
|
+
"ffmpeg-python>=0.2",
|
|
17
|
+
"openpyxl>=3.1",
|
|
18
|
+
"pillow>=10.3",
|
|
19
|
+
"h5py>=3.11",
|
|
20
|
+
"pyobjc; sys_platform == 'darwin'", # Only on macOS
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
# call setup function
|
|
24
|
+
setup(
|
|
25
|
+
name="autogaita",
|
|
26
|
+
python_requires=">=3.10",
|
|
27
|
+
version="1.5.3", # rc == release candidate (before release is finished)
|
|
28
|
+
author="Mahan Hosseini",
|
|
29
|
+
description="Automatic Gait Analysis in Python.",
|
|
30
|
+
long_description="A toolbox to streamline and standardise the analysis of kinematics across species after ML-based body posture tracking. Despite being optimised for gait analyses, AutoGaitA has the potential to be used for any kind of kinematic analysis.",
|
|
31
|
+
long_description_content_type="text/plain",
|
|
32
|
+
entry_points={
|
|
33
|
+
"console_scripts": [
|
|
34
|
+
"autogaita = autogaita.gui.main_gui:run_gui",
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
packages=find_packages(),
|
|
38
|
+
include_package_data=True,
|
|
39
|
+
package_data={"": ["*.txt", "*.rst", "*.png", "*.icns", "*.ico", "*.json"]},
|
|
40
|
+
install_requires=install_requires,
|
|
41
|
+
extras_require={"dev": ["pytest", "hypothesis"]},
|
|
42
|
+
license="GPLv3",
|
|
43
|
+
url="https://github.com/mahan-hosseini/AutoGaitA/",
|
|
44
|
+
)
|
|
@@ -4,12 +4,12 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "autogaita"
|
|
7
|
-
version = "1.5.
|
|
7
|
+
version = "1.5.6" # rc == release candidate
|
|
8
8
|
authors = [{name = "Mahan Hosseini", email = "autogaita@fz-juelich.de"}]
|
|
9
9
|
description = "Automated Gait (and more!) Analysis in Python"
|
|
10
10
|
readme = "README.md"
|
|
11
11
|
requires-python = ">=3.10"
|
|
12
|
-
license =
|
|
12
|
+
license = "GPL-3.0-only"
|
|
13
13
|
dependencies = [
|
|
14
14
|
"customtkinter>=5.2",
|
|
15
15
|
"pandas>=2.0,<3.0",
|
|
@@ -19,7 +19,7 @@ dependencies = [
|
|
|
19
19
|
"scikit-learn>=1.2",
|
|
20
20
|
"pingouin>=0.5",
|
|
21
21
|
"scipy>=1.11",
|
|
22
|
-
"scikit-bio>=0.7.1",
|
|
22
|
+
"scikit-bio>=0.7.1; sys_platform == 'darwin'",
|
|
23
23
|
"statsmodels>=0.14",
|
|
24
24
|
"ffmpeg-python>=0.2",
|
|
25
25
|
"openpyxl>=3.1",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autogaita-1.5.4 → autogaita-1.5.6}/autogaita/universal3D/universal3D_datafile_preparation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -6,7 +6,6 @@ matplotlib>=3.7
|
|
|
6
6
|
scikit-learn>=1.2
|
|
7
7
|
pingouin>=0.5
|
|
8
8
|
scipy>=1.11
|
|
9
|
-
scikit-bio>=0.7.1
|
|
10
9
|
statsmodels>=0.14
|
|
11
10
|
ffmpeg-python>=0.2
|
|
12
11
|
openpyxl>=3.1
|
|
@@ -14,6 +13,7 @@ pillow>=10.3
|
|
|
14
13
|
h5py>=3.11
|
|
15
14
|
|
|
16
15
|
[:sys_platform == "darwin"]
|
|
16
|
+
scikit-bio>=0.7.1
|
|
17
17
|
pyobjc
|
|
18
18
|
|
|
19
19
|
[dev]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|