M3Drop 0.4.58__py3-none-any.whl → 0.4.59__py3-none-any.whl
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.
- m3Drop/CoreCPU.py +13 -4
- m3Drop/CoreGPU.py +13 -2
- m3Drop/DiagnosticsCPU.py +24 -4
- m3Drop/DiagnosticsGPU.py +25 -7
- m3Drop/NormalizationCPU.py +13 -2
- m3Drop/NormalizationGPU.py +5 -4
- {m3drop-0.4.58.dist-info → m3drop-0.4.59.dist-info}/METADATA +1 -1
- m3drop-0.4.59.dist-info/RECORD +14 -0
- m3drop-0.4.58.dist-info/RECORD +0 -14
- {m3drop-0.4.58.dist-info → m3drop-0.4.59.dist-info}/WHEEL +0 -0
- {m3drop-0.4.58.dist-info → m3drop-0.4.59.dist-info}/licenses/LICENSE +0 -0
- {m3drop-0.4.58.dist-info → m3drop-0.4.59.dist-info}/top_level.txt +0 -0
m3Drop/CoreCPU.py
CHANGED
|
@@ -22,10 +22,19 @@ from scipy.stats import norm
|
|
|
22
22
|
from scipy import sparse
|
|
23
23
|
from statsmodels.stats.multitest import multipletests
|
|
24
24
|
|
|
25
|
-
#
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
|
|
25
|
+
# ==========================================
|
|
26
|
+
# HYBRID IMPORT (PACKAGE VS LOCAL)
|
|
27
|
+
# ==========================================
|
|
28
|
+
try:
|
|
29
|
+
# Case 1: Running as an installed package
|
|
30
|
+
from .ControlDeviceCPU import ControlDevice
|
|
31
|
+
except ImportError:
|
|
32
|
+
# Case 2: Running locally
|
|
33
|
+
try:
|
|
34
|
+
from ControlDeviceCPU import ControlDevice
|
|
35
|
+
except ImportError:
|
|
36
|
+
print("CRITICAL ERROR: 'ControlDeviceCPU.py' not found.")
|
|
37
|
+
sys.exit(1)
|
|
29
38
|
|
|
30
39
|
# ==========================================
|
|
31
40
|
# NUMBA KERNELS (CPU OPTIMIZED)
|
m3Drop/CoreGPU.py
CHANGED
|
@@ -22,8 +22,19 @@ import matplotlib.pyplot as plt
|
|
|
22
22
|
from scipy.stats import norm
|
|
23
23
|
from statsmodels.stats.multitest import multipletests
|
|
24
24
|
|
|
25
|
-
#
|
|
26
|
-
|
|
25
|
+
# ==========================================
|
|
26
|
+
# HYBRID IMPORT (PACKAGE VS LOCAL)
|
|
27
|
+
# ==========================================
|
|
28
|
+
try:
|
|
29
|
+
# Case 1: Running as an installed package (e.g. import m3drop.CoreGPU)
|
|
30
|
+
from .ControlDeviceGPU import ControlDevice
|
|
31
|
+
except ImportError:
|
|
32
|
+
# Case 2: Running locally (e.g. python CoreGPU.py)
|
|
33
|
+
try:
|
|
34
|
+
from ControlDeviceGPU import ControlDevice
|
|
35
|
+
except ImportError:
|
|
36
|
+
print("CRITICAL ERROR: 'ControlDeviceGPU.py' not found.")
|
|
37
|
+
sys.exit(1)
|
|
27
38
|
|
|
28
39
|
# ==========================================
|
|
29
40
|
# FUSED KERNELS
|
m3Drop/DiagnosticsCPU.py
CHANGED
|
@@ -14,9 +14,29 @@ import statsmodels.api as sm
|
|
|
14
14
|
from scipy.stats import norm
|
|
15
15
|
from statsmodels.stats.multitest import multipletests
|
|
16
16
|
|
|
17
|
-
#
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
# ==========================================
|
|
18
|
+
# HYBRID IMPORT (PACKAGE VS LOCAL)
|
|
19
|
+
# ==========================================
|
|
20
|
+
|
|
21
|
+
# [FIX] Hybrid Import: ControlDeviceCPU
|
|
22
|
+
try:
|
|
23
|
+
from .ControlDeviceCPU import ControlDevice
|
|
24
|
+
except ImportError:
|
|
25
|
+
try:
|
|
26
|
+
from ControlDeviceCPU import ControlDevice
|
|
27
|
+
except ImportError:
|
|
28
|
+
print("CRITICAL ERROR: 'ControlDeviceCPU.py' not found.")
|
|
29
|
+
sys.exit(1)
|
|
30
|
+
|
|
31
|
+
# [FIX] Hybrid Import: CoreCPU
|
|
32
|
+
try:
|
|
33
|
+
from .CoreCPU import hidden_calc_valsCPU, NBumiFitModelCPU, NBumiFitDispVsMeanCPU, dropout_prob_kernel_cpu
|
|
34
|
+
except ImportError:
|
|
35
|
+
try:
|
|
36
|
+
from CoreCPU import hidden_calc_valsCPU, NBumiFitModelCPU, NBumiFitDispVsMeanCPU, dropout_prob_kernel_cpu
|
|
37
|
+
except ImportError:
|
|
38
|
+
print("CRITICAL ERROR: 'CoreCPU.py' not found.")
|
|
39
|
+
sys.exit(1)
|
|
20
40
|
|
|
21
41
|
# ==========================================
|
|
22
42
|
# DIAGNOSTICS & COMPARISON (CPU)
|
|
@@ -244,7 +264,7 @@ def NBumiCompareModelsCPU(
|
|
|
244
264
|
stats: dict,
|
|
245
265
|
fit_adjust: dict,
|
|
246
266
|
mask_filename: str = None,
|
|
247
|
-
mode: str = "auto",
|
|
267
|
+
mode: str = "auto",
|
|
248
268
|
manual_target: int = 3000,
|
|
249
269
|
suppress_plot=False,
|
|
250
270
|
plot_filename=None
|
m3Drop/DiagnosticsGPU.py
CHANGED
|
@@ -13,13 +13,31 @@ from scipy import sparse
|
|
|
13
13
|
from scipy import stats
|
|
14
14
|
import anndata
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
16
|
+
# ==========================================
|
|
17
|
+
# HYBRID IMPORT (PACKAGE VS LOCAL)
|
|
18
|
+
# ==========================================
|
|
19
|
+
try:
|
|
20
|
+
# Case 1: Package
|
|
21
|
+
from .ControlDeviceGPU import ControlDevice
|
|
22
|
+
from .CoreGPU import (
|
|
23
|
+
hidden_calc_valsGPU,
|
|
24
|
+
NBumiFitModelGPU,
|
|
25
|
+
NBumiFitDispVsMeanGPU,
|
|
26
|
+
dropout_prob_kernel
|
|
27
|
+
)
|
|
28
|
+
except ImportError:
|
|
29
|
+
# Case 2: Local
|
|
30
|
+
try:
|
|
31
|
+
from ControlDeviceGPU import ControlDevice
|
|
32
|
+
from CoreGPU import (
|
|
33
|
+
hidden_calc_valsGPU,
|
|
34
|
+
NBumiFitModelGPU,
|
|
35
|
+
NBumiFitDispVsMeanGPU,
|
|
36
|
+
dropout_prob_kernel
|
|
37
|
+
)
|
|
38
|
+
except ImportError:
|
|
39
|
+
print("CRITICAL ERROR: Dependencies (ControlDeviceGPU, CoreGPU) not found.")
|
|
40
|
+
sys.exit(1)
|
|
23
41
|
|
|
24
42
|
from cupy.sparse import csr_matrix as cp_csr_matrix
|
|
25
43
|
import scipy.sparse as sp
|
m3Drop/NormalizationCPU.py
CHANGED
|
@@ -16,8 +16,19 @@ except ImportError:
|
|
|
16
16
|
print("CRITICAL ERROR: 'numba' not found. Please install it (pip install numba).")
|
|
17
17
|
sys.exit(1)
|
|
18
18
|
|
|
19
|
-
#
|
|
20
|
-
|
|
19
|
+
# ==========================================
|
|
20
|
+
# HYBRID IMPORT (PACKAGE VS LOCAL)
|
|
21
|
+
# ==========================================
|
|
22
|
+
try:
|
|
23
|
+
# Case 1: Running as an installed package
|
|
24
|
+
from .ControlDeviceCPU import ControlDevice
|
|
25
|
+
except ImportError:
|
|
26
|
+
# Case 2: Running locally
|
|
27
|
+
try:
|
|
28
|
+
from ControlDeviceCPU import ControlDevice
|
|
29
|
+
except ImportError:
|
|
30
|
+
print("CRITICAL ERROR: 'ControlDeviceCPU.py' not found.")
|
|
31
|
+
sys.exit(1)
|
|
21
32
|
|
|
22
33
|
# ==========================================
|
|
23
34
|
# NUMBA KERNELS (CPU)
|
m3Drop/NormalizationGPU.py
CHANGED
|
@@ -18,10 +18,14 @@ except ImportError:
|
|
|
18
18
|
cupy = None
|
|
19
19
|
HAS_GPU = False
|
|
20
20
|
|
|
21
|
-
#
|
|
21
|
+
# ==========================================
|
|
22
|
+
# HYBRID IMPORT (PACKAGE VS LOCAL)
|
|
23
|
+
# ==========================================
|
|
22
24
|
try:
|
|
25
|
+
# Case 1: Package
|
|
23
26
|
from .ControlDeviceGPU import ControlDevice
|
|
24
27
|
except ImportError:
|
|
28
|
+
# Case 2: Local
|
|
25
29
|
try:
|
|
26
30
|
from ControlDeviceGPU import ControlDevice
|
|
27
31
|
except ImportError:
|
|
@@ -367,6 +371,3 @@ def NBumiPearsonResidualsCombinedGPU(
|
|
|
367
371
|
|
|
368
372
|
if hasattr(adata_in, "file") and adata_in.file is not None: adata_in.file.close()
|
|
369
373
|
print(f"Total time: {time.perf_counter() - start_time:.2f} seconds.\n")
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
m3Drop/ControlDeviceCPU.py,sha256=8P-hxd4thc2wSeon73b9rz3clIGkE3x0cEE82RiGFds,8880
|
|
2
|
+
m3Drop/ControlDeviceGPU.py,sha256=4nzPtgyV0RsEOeezwCVJ7oyDOsp9-dRVLczlduUocpU,9143
|
|
3
|
+
m3Drop/CoreCPU.py,sha256=bJ-4eSW5Q5FXIRdxv6Q8Aj-hF4VhvVq0fFJpTPZGwDA,18922
|
|
4
|
+
m3Drop/CoreGPU.py,sha256=phOUJ6PyOCczY3x_9FzVuOtC-oyHOkDte8bqA1yX7b4,20227
|
|
5
|
+
m3Drop/DiagnosticsCPU.py,sha256=YnKK6mkPEUS8IkQ-vKPE3aZaVJQBsSUp3YsO98sPNV0,13569
|
|
6
|
+
m3Drop/DiagnosticsGPU.py,sha256=wtVC2O48vcfS0sEl7RlXTHGZRBNDehszXEtxgLOqTJc,14994
|
|
7
|
+
m3Drop/NormalizationCPU.py,sha256=Qfj2IRMQyxkvJaAlbH9_H6SMFIWs_UCw3LhY2mOTFSA,13038
|
|
8
|
+
m3Drop/NormalizationGPU.py,sha256=FJLzfYdEB96v9OXld64FZO7r5_M9AU00OSuSlaM0ThY,15541
|
|
9
|
+
m3Drop/__init__.py,sha256=W_TQ9P8_7Tdsa6kDZ6IJKT0FMkX_JFvBqiP821CZIrk,2180
|
|
10
|
+
m3drop-0.4.59.dist-info/licenses/LICENSE,sha256=44Iqpp8Fc10Xzd5T7cT9UhO31Qftk3gBiCjtpwilP_k,1074
|
|
11
|
+
m3drop-0.4.59.dist-info/METADATA,sha256=S9HaM8uJ_X5BfUnho10yRoYV62o8yXkBfm9oWYCKWY4,5248
|
|
12
|
+
m3drop-0.4.59.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
13
|
+
m3drop-0.4.59.dist-info/top_level.txt,sha256=AEULFEFIgFtAwS-KBlIFoYXrqczX_rwqrEcdK46GIrA,7
|
|
14
|
+
m3drop-0.4.59.dist-info/RECORD,,
|
m3drop-0.4.58.dist-info/RECORD
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
m3Drop/ControlDeviceCPU.py,sha256=8P-hxd4thc2wSeon73b9rz3clIGkE3x0cEE82RiGFds,8880
|
|
2
|
-
m3Drop/ControlDeviceGPU.py,sha256=4nzPtgyV0RsEOeezwCVJ7oyDOsp9-dRVLczlduUocpU,9143
|
|
3
|
-
m3Drop/CoreCPU.py,sha256=csRg5TLQx1Sup7k3lDJm9OO5Oe5-1aC3u_6ldE_GIX8,18679
|
|
4
|
-
m3Drop/CoreGPU.py,sha256=6LToLuWyHxX_7sC2z0Xnvy_qqgmpew5DmnCV0PxmTZQ,19785
|
|
5
|
-
m3Drop/DiagnosticsCPU.py,sha256=l0Imkh3F3zo4ovihUjx7cYWYgzPdztWCN1hcBFO43nY,12943
|
|
6
|
-
m3Drop/DiagnosticsGPU.py,sha256=bsatHyHszgbufneeJvFvHBTLzDuY006nP2yHPHs8s7M,14389
|
|
7
|
-
m3Drop/NormalizationCPU.py,sha256=_YQtKG1UkmY34LHSGkeOmPju5esTv2-qZiG6-_ade7I,12656
|
|
8
|
-
m3Drop/NormalizationGPU.py,sha256=Vk3Tend1BcNnMKuReEgztWSBo1-F1kVk34O9z4ebAM0,15399
|
|
9
|
-
m3Drop/__init__.py,sha256=W_TQ9P8_7Tdsa6kDZ6IJKT0FMkX_JFvBqiP821CZIrk,2180
|
|
10
|
-
m3drop-0.4.58.dist-info/licenses/LICENSE,sha256=44Iqpp8Fc10Xzd5T7cT9UhO31Qftk3gBiCjtpwilP_k,1074
|
|
11
|
-
m3drop-0.4.58.dist-info/METADATA,sha256=B8V0jyIuOsViRAeluilVmMYePDH-2azDpmdVm6Ovab0,5248
|
|
12
|
-
m3drop-0.4.58.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
13
|
-
m3drop-0.4.58.dist-info/top_level.txt,sha256=AEULFEFIgFtAwS-KBlIFoYXrqczX_rwqrEcdK46GIrA,7
|
|
14
|
-
m3drop-0.4.58.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|