Skip to content
This repository was archived by the owner on Nov 17, 2025. It is now read-only.

Multiple associates for a single file fails to create correct map #23

@evamaxfield

Description

@evamaxfield

Reproduce with:

import pandas as pd
from quilt3distribute import Dataset

t = pd.DataFrame([
    {
        "FOVId": 1,
        "CellId": 1,
        "FOVReadPath": "overview1.tiff",
        "CellReadPath": "overview1cell1.tiff"
    },
    {
        "FOVId": 1,
        "CellId": 2,
        "FOVReadPath": "overview1.tiff",
        "CellReadPath": "overview1cell2.tiff"
    },
    {
        "FOVId": 1,
        "CellId": 3,
        "FOVReadPath": "overview1.tiff",
        "CellReadPath": "overview1cell3.tiff"
    },
])

d = Dataset(
    dataset=t,
    name="single_cell_examples",
    package_owner="jacksonb",
    readme_path="README.md"
)

d.set_metadata_columns(["FOVId", "CellId"])

pkg = d.distribute()

Results in package:

(local Package)
 └─README.md
 └─CellReadPath/
   └─28aa220b_overview1cell2.tiff
   └─bd5f82f0_overview1cell3.tiff
   └─e95c4684_overview1cell1.tiff
 └─metadata.csv
 └─FOVReadPath/
   └─a194ec50_overview1.tiff
 └─referenced_files/
   └─example.csv

pkg["FOVReadPath"]["a194ec50_overview1.tiff"].meta returns:

{
    "FOVId": 1,
    "CellId": [1, 2, 3],
    "associates": {
        "FOVReadPath": "overview-images/a194ec50_overview1.tiff",
        "CellReadPath": "cell-images/bd5f82f0_overview1cell3.tiff"
    }
}

When it should return:

{
    "FOVId": 1,
    "CellId": [1, 2, 3],
    "associates": {
        "FOVReadPath": "overview-images/a194ec50_overview1.tiff",
        "CellReadPath": [
            "cell-images/e95c4684_overview1cell1.tiff",
            "cell-images/28aa220b_overview1cell2.tiff",
            "cell-images/bd5f82f0_overview1cell3.tiff"
        ]
    }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions