Mercurial > repos > iuc > mudata_import_export
view mudata_import_export.xml @ 4:aa9162c059b3 draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/muon commit fef10e0d450018d1e6ba4cbbda76c7686edc8aae
| author | iuc |
|---|---|
| date | Sat, 25 Oct 2025 21:00:59 +0000 |
| parents | 089a6101d5d9 |
| children |
line wrap: on
line source
<tool id="mudata_import_export" name="MuData import and export" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@"> <macros> <import>macros.xml</import> </macros> <expand macro="bio_tools"/> <expand macro="requirements"/> <expand macro="version_command"/> <command detect_errors="exit_code"><![CDATA[ @CMD@ ]]></command> <configfiles> <configfile name="script_file"><![CDATA[ @CMD_imports@ #if $operation.mode == 'import' import anndata as ad mdata = mu.MuData({ #for $modality in $operation.modalities '$modality.name': ad.read_h5ad('$modality.anndata'), #end for }) #if $make_unique mdata.var_names_make_unique() #end if mdata.write_h5mu('mudata.h5mu') #else if $operation.mode == 'export' mdata = mu.read_h5mu('$operation.mudata_in') for mod in mdata.mod: mdata[mod].write_h5ad(mod + '.h5ad') #end if ]]></configfile> </configfiles> <inputs> <conditional name="operation"> <param name="mode" type="select" label="Mode of operation"> <option value="import" selected="true">Import multiple Anndata objects into a MuData object</option> <option value="export">Export Anndata objects from a MuData objects</option> </param> <when value="import"> <repeat name="modalities" title="Modalities" min="2" default="2"> <param name="name" type="text" label="Modality name" value="" help="Name to give for the modality in the MuData object"> <expand macro="sanitize_string" /> </param> <param name="anndata" type="data" format="h5ad" label="Anndata object for the modality"/> </repeat> <param name="make_unique" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Make variable names unique?"/> </when> <when value="export"> <param name="mudata_in" type="data" format="h5ad" label="Multimodal MuData object"/> </when> </conditional> <expand macro="inputs_common_advanced" /> </inputs> <outputs> <data name="mudata_out" format="h5ad" from_work_dir="mudata.h5mu" label="MuData object built from ${on_string}"> <filter>operation['mode'] == 'import' </filter> </data> <collection name="collection_anndata" type="list" label="Anndata objects extracted from ${on_string}"> <discover_datasets pattern="(?P<designation>.*).h5ad" format="h5ad"/> <filter>operation['mode'] == 'export' </filter> </collection> <expand macro="outputs_common_advanced"/> </outputs> <tests> <test expect_num_outputs="2"> <!--Import test for RNA and ATAC modalities--> <conditional name="operation"> <param name="mode" value="import"/> <repeat name="modalities"> <param name="name" value="RNA"/> <param name="anndata" location="https://zenodo.org/records/12570984/files/rna.h5ad"/> </repeat> <repeat name="modalities"> <param name="name" value="ATAC"/> <param name="anndata" location="https://zenodo.org/records/12570984/files/atac.h5ad"/> </repeat> <param name="make_unique" value="True"/> </conditional> <section name="advanced_common"> <param name="show_log" value="true" /> </section> <output name="hidden_output"> <assert_contents> <has_text_matching expression="mu.MuData"/> <has_text_matching expression="'RNA': ad.read"/> <has_text_matching expression="'ATAC': ad.read"/> <has_text_matching expression="var_names_make_unique()"/> </assert_contents> </output> <output name="mudata_out" ftype="h5ad"> <assert_contents> <has_h5_keys keys="mod/RNA"/> <has_h5_keys keys="mod/ATAC"/> <has_h5_keys keys="var/feature_types"/> </assert_contents> </output> </test> <test expect_num_outputs="2"> <!--Export test for RNA and ATAC modalities--> <conditional name="operation"> <param name="mode" value="export"/> <param name="mudata_in" location="https://zenodo.org/records/12570984/files/rna_atac.h5mu"/> </conditional> <section name="advanced_common"> <param name="show_log" value="true" /> </section> <output name="hidden_output"> <assert_contents> <has_text_matching expression="mu.read_h5mu"/> <has_text_matching expression="write_h5ad"/> </assert_contents> </output> <output_collection name="collection_anndata" type="list" count="2"> <element name="ATAC" ftype="h5ad"> <assert_contents> <has_h5_keys keys="var/gene_ids"/> <has_h5_keys keys="uns/neighbors"/> <has_h5_keys keys="obsp/connectivities"/> </assert_contents> </element> <element name="RNA" ftype="h5ad"> <assert_contents> <has_h5_keys keys="var/gene_ids"/> <has_h5_keys keys="uns/neighbors"/> <has_h5_keys keys="obsp/connectivities"/> </assert_contents> </element> </output_collection> </test> </tests> <help><![CDATA[ **What it does** Create MuData from AnnData is a tool that allows creating a muon.MuData object out of two or more AnnData objects for multimodal analysis. The multimodal data is created by combining AnnData objects as h5ad files into a MuData object as a h5mu file using muon. Furthermore, it runs pp.intersect_obs to keep only entries present in both modalities (AnnData objects) in the final MuData file. ]]></help> <expand macro="citations"/> </tool>
