当前位置: 首页>>代码示例>>Python>>正文


Python Artifact.load方法代码示例

本文整理汇总了Python中qiime2.sdk.Artifact.load方法的典型用法代码示例。如果您正苦于以下问题:Python Artifact.load方法的具体用法?Python Artifact.load怎么用?Python Artifact.load使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在qiime2.sdk.Artifact的用法示例。


在下文中一共展示了Artifact.load方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_load_with_archive_filepath_modified

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
    def test_load_with_archive_filepath_modified(self):
        # Save an artifact for use in the following test case.
        fp = os.path.join(self.test_dir.name, 'artifact.qza')
        Artifact.import_data(FourInts, [-1, 42, 0, 43]).save(fp)

        # Load the artifact from a filepath then save a different artifact to
        # the same filepath. Assert that both artifacts produce the correct
        # views of their data.
        #
        # `load` used to be lazy, only extracting data when it needed to (e.g.
        # when `save` or `view` was called). This was buggy as the filepath
        # could have been deleted, or worse, modified to contain a different
        # .qza file. Thus, the wrong archive could be extracted on demand, or
        # the archive could be missing altogether. There isn't an easy
        # cross-platform compatible way to solve this problem, so Artifact.load
        # is no longer lazy and always extracts its data immediately. The real
        # motivation for lazy loading was for quick inspection of archives
        # without extracting/copying data, so that API is now provided through
        # Artifact.peek.
        artifact1 = Artifact.load(fp)
        Artifact.import_data(FourInts, [10, 11, 12, 13]).save(fp)
        artifact2 = Artifact.load(fp)

        self.assertEqual(artifact1.view(list), [-1, 42, 0, 43])
        self.assertEqual(artifact2.view(list), [10, 11, 12, 13])
开发者ID:jakereps,项目名称:qiime2,代码行数:27,代码来源:test_artifact.py

示例2: test_eq_same_uuid

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
    def test_eq_same_uuid(self):
        fp = os.path.join(self.test_dir.name, 'artifact.qza')
        artifact1 = Artifact.import_data(FourInts, [-1, 42, 0, 43])
        artifact1.save(fp)

        artifact2 = Artifact.load(fp)

        self.assertEqual(artifact1, artifact2)
开发者ID:jakereps,项目名称:qiime2,代码行数:10,代码来源:test_artifact.py

示例3: test_roundtrip

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
    def test_roundtrip(self):
        fp1 = os.path.join(self.test_dir.name, 'artifact1.qza')
        fp2 = os.path.join(self.test_dir.name, 'artifact2.qza')
        artifact = Artifact.import_data(FourInts, [-1, 42, 0, 43])

        artifact.save(fp1)

        artifact1 = Artifact.load(fp1)
        artifact1.save(fp2)
        artifact2 = Artifact.load(fp2)

        self.assertEqual(artifact1.type, artifact2.type)
        self.assertEqual(artifact1.format, artifact2.format)
        self.assertEqual(artifact1.uuid, artifact2.uuid)
        self.assertEqual(artifact1.view(list),
                         artifact2.view(list))
        # double view to make sure multiple views can be taken
        self.assertEqual(artifact1.view(list),
                         artifact2.view(list))
开发者ID:jakereps,项目名称:qiime2,代码行数:21,代码来源:test_artifact.py

示例4: test_load

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
    def test_load(self):
        saved_artifact = Artifact.import_data(FourInts, [-1, 42, 0, 43])
        fp = os.path.join(self.test_dir.name, 'artifact.qza')
        saved_artifact.save(fp)

        artifact = Artifact.load(fp)

        self.assertEqual(artifact.type, FourInts)
        self.assertEqual(artifact.uuid, saved_artifact.uuid)
        self.assertEqual(artifact.view(list), [-1, 42, 0, 43])
        self.assertEqual(artifact.view(list), [-1, 42, 0, 43])
开发者ID:jakereps,项目名称:qiime2,代码行数:13,代码来源:test_artifact.py

示例5: test_ne_subclass_same_uuid

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
    def test_ne_subclass_same_uuid(self):
        class ArtifactSubclass(Artifact):
            pass

        fp = os.path.join(self.test_dir.name, 'artifact.qza')
        artifact1 = ArtifactSubclass.import_data(FourInts, [-1, 42, 0, 43])
        artifact1.save(fp)

        artifact2 = Artifact.load(fp)

        self.assertNotEqual(artifact1, artifact2)
        self.assertNotEqual(artifact2, artifact1)
开发者ID:jakereps,项目名称:qiime2,代码行数:14,代码来源:test_artifact.py

示例6: test_load_and_save

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
    def test_load_and_save(self):
        fp1 = os.path.join(self.test_dir.name, 'artifact1.qza')
        fp2 = os.path.join(self.test_dir.name, 'artifact2.qza')
        artifact = Artifact.import_data(FourInts, [-1, 42, 0, 43])
        artifact.save(fp1)

        artifact = Artifact.load(fp1)
        # Overwriting its source file works.
        artifact.save(fp1)
        # Saving to a new file works.
        artifact.save(fp2)

        root_dir = str(artifact.uuid)
        expected = {
            'VERSION',
            'checksums.md5',
            'metadata.yaml',
            'data/file1.txt',
            'data/file2.txt',
            'data/nested/file3.txt',
            'data/nested/file4.txt',
            'provenance/metadata.yaml',
            'provenance/VERSION',
            'provenance/citations.bib',
            'provenance/action/action.yaml'
        }

        self.assertArchiveMembers(fp1, root_dir, expected)

        root_dir = str(artifact.uuid)
        expected = {
            'VERSION',
            'checksums.md5',
            'metadata.yaml',
            'data/file1.txt',
            'data/file2.txt',
            'data/nested/file3.txt',
            'data/nested/file4.txt',
            'provenance/metadata.yaml',
            'provenance/VERSION',
            'provenance/citations.bib',
            'provenance/action/action.yaml'
        }

        self.assertArchiveMembers(fp2, root_dir, expected)
开发者ID:thermokarst,项目名称:qiime2,代码行数:47,代码来源:test_artifact.py

示例7: test_load_different_type_with_multiple_view_types

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
    def test_load_different_type_with_multiple_view_types(self):
        saved_artifact = Artifact.import_data(IntSequence1,
                                              [42, 42, 43, -999, 42])
        fp = os.path.join(self.test_dir.name, 'artifact.qza')
        saved_artifact.save(fp)

        artifact = Artifact.load(fp)

        self.assertEqual(artifact.type, IntSequence1)
        self.assertEqual(artifact.uuid, saved_artifact.uuid)

        self.assertEqual(artifact.view(list),
                         [42, 42, 43, -999, 42])
        self.assertEqual(artifact.view(list),
                         [42, 42, 43, -999, 42])

        self.assertEqual(artifact.view(collections.Counter),
                         collections.Counter({42: 3, 43: 1, -999: 1}))
        self.assertEqual(artifact.view(collections.Counter),
                         collections.Counter({42: 3, 43: 1, -999: 1}))
开发者ID:jakereps,项目名称:qiime2,代码行数:22,代码来源:test_artifact.py

示例8: export_artifact

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
def export_artifact(uuid):
    output = request.get_json().get('path')
    Artifact.load(ARTIFACTS[uuid]).export_data(output)
    return jsonify({'path': output})
开发者ID:thermokarst,项目名称:qiime-studio,代码行数:6,代码来源:workspace.py

示例9: load_artifacts

# 需要导入模块: from qiime2.sdk import Artifact [as 别名]
# 或者: from qiime2.sdk.Artifact import load [as 别名]
def load_artifacts(**kwargs):
    return {k: Artifact.load(ARTIFACTS[v]) for k, v in kwargs.items()
            if v != ''}
开发者ID:thermokarst,项目名称:qiime-studio,代码行数:5,代码来源:workspace.py


注:本文中的qiime2.sdk.Artifact.load方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。