Analyze the collection and save a result露
import lamindb as ln
import bionty as bt
ln.settings.transform.stem_uid = "zzJzdgJ763Dy"
ln.settings.transform.version = "0"
ln.track()
馃挕 connected lamindb: testuser1/test-facs
馃挕 notebook imports: bionty==0.47.1 lamindb==0.75.0 scanpy==1.9.6
馃挕 saved: Transform(uid='zzJzdgJ763Dy6K79', version='0', name='Analyze the collection and save a result', key='facs4', type='notebook', created_by_id=1, updated_at='2024-08-05 13:27:02 UTC')
馃挕 saved: Run(uid='roAagq4Oxa64fOz72Vwq', transform_id=4, created_by_id=1)
Run(uid='roAagq4Oxa64fOz72Vwq', started_at='2024-08-05 13:27:02 UTC', is_consecutive=True, transform_id=4, created_by_id=1)
ln.Collection.df()
uid | version | name | description | hash | reference | reference_type | visibility | transform_id | meta_artifact_id | run_id | created_by_id | updated_at | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id | |||||||||||||
2 | MlzTM1EdHQkGTqX7TJak | 2 | My versioned cytometry collection | None | aIyjTZDm9LEyi4udLlQ-FA | None | None | 1 | 2 | None | 2 | 1 | 2024-08-05 13:26:52.044925+00:00 |
1 | MlzTM1EdHQkGTqX7MGAu | 1 | My versioned cytometry collection | None | _SSVHoSL17yyiRlHc8Hrgw | None | None | 1 | 1 | None | 1 | 1 | 2024-08-05 13:26:35.266230+00:00 |
collection = ln.Collection.filter(
name="My versioned cytometry collection", version="2"
).one()
adata = collection.load(join="inner")
/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/anndata/_core/anndata.py:1818: UserWarning: Observation names are not unique. To make them unique, call `.obs_names_make_unique`.
utils.warn_names_duplicates("obs")
The AnnData
has the reference to the individual files in the .obs
annotations:
adata.obs.artifact_uid.cat.categories
Index(['mdCzldphI7DBdRw122ih', '6zT2nqtiOQbJ4ffYzBeo'], dtype='object')
By default, the intersection of features is used:
adata.var.index
Index(['CD8', 'CD27', 'Ccr7', 'Cd4', 'CD45RA', 'CD3'], dtype='object')
Let us create a plot:
markers = bt.CellMarker.lookup()
import scanpy as sc
sc.pp.pca(adata)
sc.pl.pca(adata, color=markers.cd8.name, save="_cd8")
WARNING: saving figure to file figures/pca_cd8.pdf
artifact = ln.Artifact("./figures/pca_cd8.pdf", description="My result on CD8").save()
artifact.view_lineage()
Given the image is part of the notebook, there isn鈥檛 an actual need to save it and you can also rely on the report that you鈥檒l create when saving the notebook:
ln.finish()
# clean up test instance
!lamin delete --force test-facs
!rm -r test-flow
Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.10.14/x64/bin/lamin", line 8, in <module>
sys.exit(main())
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/rich_click/rich_command.py", line 367, in __call__
return super().__call__(*args, **kwargs)
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/click/core.py", line 1157, in __call__
return self.main(*args, **kwargs)
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/rich_click/rich_command.py", line 152, in main
rv = self.invoke(ctx)
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/lamin_cli/__main__.py", line 164, in delete
return delete(instance, force=force)
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/lamindb_setup/_delete.py", line 98, in delete
n_objects = check_storage_is_empty(
File "/opt/hostedtoolcache/Python/3.10.14/x64/lib/python3.10/site-packages/lamindb_setup/core/upath.py", line 779, in check_storage_is_empty
raise InstanceNotEmpty(message)
lamindb_setup.core.upath.InstanceNotEmpty: Storage /home/runner/work/lamin-usecases/lamin-usecases/docs/test-facs/.lamindb contains 3 objects ('_is_initialized' ignored) - delete them prior to deleting the instance
rm: cannot remove 'test-flow': No such file or directory