You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1069, in preprocess_from_handle
self.preprocess_data(reader)
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1167, in preprocess_data
self.post_process()
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1343, in post_process
did = int(columns_by_name["dataset"].values[i])
This occurs during the preprocess_data(), where we are trying to find the longest Dataset Name, so that the Dataset Name column can be created of the correct size (before we populate the table).
This is trying to look-up Image Name for a row that only has Image ID. However, to get Image Names from a ProjectWrapper, we first need the Dataset ID, since images_by_id is self.images_by_id[did][iid] = image.
However, we don't really need to group the Image IDs under Dataset ID since they are globally unique.
$ omero metadata populate Screen:601 --file test-image-plate-ids.csv -vvv
...
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1127, in parse
self.preprocess_from_handle(f1)
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1069, in preprocess_from_handle
self.preprocess_data(reader)
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1167, in preprocess_data
self.post_process()
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1385, in post_process
pid = columns_by_name['plate'].values[i]
IndexError: list index out of range
or with the header plate column set to l I get:
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1167, in preprocess_data
self.post_process()
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 1386, in post_process
iname = self.value_resolver.get_image_name_by_id(iid, pid)
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 389, in get_image_name_by_id
return self.wrapper.get_image_name_by_id(iid, pid)
File "/Users/wmoore/Desktop/METADATA/omero-metadata/src/omero_metadata/populate.py", line 568, in get_image_name_by_id
raise Exception("Cannot resolve image to plate")
None of the usage of populate metadata with Image IDs is yet documented in the README or covered in the tests, so it's hard to know if any of this is supported?
I'm seeing the same issues when trying to support ROI IDs for Dataset. #62
Currently, the workaround is to not add a Roi Name column when we find a roi column IF the target class is a Dataset.
Currently, this csv works with a target of Dataset, with Image IDs validated and set to -1 if invalid:
However, if I try to use a Project as target, with a Dataset column this fails (same result if the
header
column type isl
):with:
This occurs during the
preprocess_data()
, where we are trying to find the longest Dataset Name, so that theDataset Name
column can be created of the correct size (before we populate the table).This is trying to look-up
Image Name
for a row that only has Image ID. However, to get Image Names from a ProjectWrapper, we first need the Dataset ID, sinceimages_by_id
isself.images_by_id[did][iid] = image
.However, we don't really need to group the
Image IDs
underDataset ID
since they are globally unique.Trying the same with HCS data...
With a Screen...
or with the
header
plate column set tol
I get:None of the usage of
populate metadata
with Image IDs is yet documented in the README or covered in the tests, so it's hard to know if any of this is supported?cc @emilroz @stick @sbesson
The text was updated successfully, but these errors were encountered: