cap-anndata 0.4.0__py3-none-any.whl → 0.5.0__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.
- cap_anndata/cap_anndata.py +13 -9
- {cap_anndata-0.4.0.dist-info → cap_anndata-0.5.0.dist-info}/METADATA +5 -2
- cap_anndata-0.5.0.dist-info/RECORD +10 -0
- {cap_anndata-0.4.0.dist-info → cap_anndata-0.5.0.dist-info}/WHEEL +1 -1
- cap_anndata-0.4.0.dist-info/RECORD +0 -10
- {cap_anndata-0.4.0.dist-info → cap_anndata-0.5.0.dist-info/licenses}/LICENSE +0 -0
- {cap_anndata-0.4.0.dist-info → cap_anndata-0.5.0.dist-info}/top_level.txt +0 -0
cap_anndata/cap_anndata.py
CHANGED
@@ -143,15 +143,19 @@ class BaseLayerMatrixAndDf:
|
|
143
143
|
if not isinstance(group, h5py.Group):
|
144
144
|
raise ValueError(f"The object {key} must be a group!")
|
145
145
|
|
146
|
-
for
|
147
|
-
|
148
|
-
if isinstance(
|
149
|
-
cap_dict[
|
150
|
-
elif isinstance(
|
151
|
-
|
146
|
+
for entity_name in group.keys():
|
147
|
+
entity = group[entity_name]
|
148
|
+
if isinstance(entity, h5py.Dataset):
|
149
|
+
cap_dict[entity_name] = entity
|
150
|
+
elif isinstance(entity, h5py.Group):
|
151
|
+
enc_type = dict(entity.attrs).get("encoding-type")
|
152
|
+
if enc_type == "dataframe":
|
153
|
+
cap_dict[entity_name] = self._read_df(key="/".join([key, entity_name]), columns=None)
|
154
|
+
elif enc_type in ["csc_matrix", "csr_matrix"]:
|
155
|
+
cap_dict[entity_name] = sparse_dataset(entity)
|
152
156
|
else:
|
153
157
|
raise ValueError(
|
154
|
-
f"Can't link array in {key} due to unsupported type of object: {type(
|
158
|
+
f"Can't link array in {key} due to unsupported type of object: {type(entity)}"
|
155
159
|
)
|
156
160
|
|
157
161
|
def _create_new_matrix(
|
@@ -260,11 +264,11 @@ class CapAnnData(BaseLayerMatrixAndDf):
|
|
260
264
|
def raw(self) -> RawLayer:
|
261
265
|
if self._raw is None:
|
262
266
|
if "raw" not in self._file.keys():
|
263
|
-
logger.
|
267
|
+
logger.debug("Can't read raw.var since raw layer doesn't exist!")
|
264
268
|
return
|
265
269
|
|
266
270
|
if len(self._file["raw"].keys()) == 0:
|
267
|
-
logger.
|
271
|
+
logger.debug("The raw layer is empty!")
|
268
272
|
return
|
269
273
|
|
270
274
|
self._raw = RawLayer(self._file)
|
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.4
|
2
2
|
Name: cap_anndata
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.5.0
|
4
4
|
Summary: Partial read/write of AnnData (h5ad) files for low-memory operations with large datasets.
|
5
5
|
Home-page: https://github.com/cellannotation/cap-anndata
|
6
6
|
Author: R. Mukhin, A. Isaev
|
@@ -26,6 +26,7 @@ Dynamic: classifier
|
|
26
26
|
Dynamic: description
|
27
27
|
Dynamic: description-content-type
|
28
28
|
Dynamic: home-page
|
29
|
+
Dynamic: license-file
|
29
30
|
Dynamic: project-url
|
30
31
|
Dynamic: provides-extra
|
31
32
|
Dynamic: requires-dist
|
@@ -34,6 +35,8 @@ Dynamic: summary
|
|
34
35
|
|
35
36
|
# CAP-AnnData: Partial I/O for AnnData (.h5ad) Files
|
36
37
|
|
38
|
+
[](https://pypi.org/project/cap-anndata/) [](https://github.com/cellannotation/cap-anndata/actions)
|
39
|
+
|
37
40
|
## Overview
|
38
41
|
CAP-AnnData offering functionalities for selective reading and writing of [AnnData](https://pypi.org/project/anndata/)
|
39
42
|
file fields without the need for loading entire dataset (or even entire field) into memory.
|
@@ -0,0 +1,10 @@
|
|
1
|
+
cap_anndata/__init__.py,sha256=WRAQEDsWTvLbJWVUA5FmKCVrD2GN4oRd5I3c8jc9ajo,197
|
2
|
+
cap_anndata/backed_df.py,sha256=2OVomvTY51V05sYwEXg-4JYBgd9iJCA2-Lt7nEAL1Ug,3255
|
3
|
+
cap_anndata/backed_dict.py,sha256=Hb1SjnKuQ13mBUitQ5sL3kmcQ1j3GgB19r3yXkC0oIo,1019
|
4
|
+
cap_anndata/cap_anndata.py,sha256=4sro4BIsaOuTBHrRXYCi0WlGtxsql_bnqIDEpT2tRhQ,21371
|
5
|
+
cap_anndata/reader.py,sha256=UpZBCjaS4-K2w_9m6IuYetO9LwmEEJ5KvAw9aAoMRno,1609
|
6
|
+
cap_anndata-0.5.0.dist-info/licenses/LICENSE,sha256=XXTH6JikkxH7Gqy9VEj4crSizuwxzv04ROzkQ-ZS6o4,1532
|
7
|
+
cap_anndata-0.5.0.dist-info/METADATA,sha256=CbdJemeEOB1hIJ7tPrVOT7JldkVNOiJ6zkW8AFqTjqU,2825
|
8
|
+
cap_anndata-0.5.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
9
|
+
cap_anndata-0.5.0.dist-info/top_level.txt,sha256=GKi_Uk4LUhXwWBfFCTIyJvEoJqFREt_4uH4CWgeLsg4,12
|
10
|
+
cap_anndata-0.5.0.dist-info/RECORD,,
|
@@ -1,10 +0,0 @@
|
|
1
|
-
cap_anndata/__init__.py,sha256=WRAQEDsWTvLbJWVUA5FmKCVrD2GN4oRd5I3c8jc9ajo,197
|
2
|
-
cap_anndata/backed_df.py,sha256=2OVomvTY51V05sYwEXg-4JYBgd9iJCA2-Lt7nEAL1Ug,3255
|
3
|
-
cap_anndata/backed_dict.py,sha256=Hb1SjnKuQ13mBUitQ5sL3kmcQ1j3GgB19r3yXkC0oIo,1019
|
4
|
-
cap_anndata/cap_anndata.py,sha256=-Lp6wxPncVcl_TaECnE6uHTfD9j_Ow_rScvpAWKK_fs,21081
|
5
|
-
cap_anndata/reader.py,sha256=UpZBCjaS4-K2w_9m6IuYetO9LwmEEJ5KvAw9aAoMRno,1609
|
6
|
-
cap_anndata-0.4.0.dist-info/LICENSE,sha256=XXTH6JikkxH7Gqy9VEj4crSizuwxzv04ROzkQ-ZS6o4,1532
|
7
|
-
cap_anndata-0.4.0.dist-info/METADATA,sha256=IXvItMAdXH-CunN3fNlyHPNFmxfoF9dOrU58tl17eLQ,2539
|
8
|
-
cap_anndata-0.4.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
9
|
-
cap_anndata-0.4.0.dist-info/top_level.txt,sha256=GKi_Uk4LUhXwWBfFCTIyJvEoJqFREt_4uH4CWgeLsg4,12
|
10
|
-
cap_anndata-0.4.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|