Skip to content

Commit

Permalink
Added check for AS and corridors
Browse files Browse the repository at this point in the history
  • Loading branch information
andreasbueckle committed Sep 1, 2023
1 parent db277da commit 4c2cfa2
Showing 1 changed file with 29 additions and 12 deletions.
41 changes: 29 additions & 12 deletions data/validation+testing/number_check.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,38 +12,53 @@ def main():
enriched_rui_locations = load_json("../enriched_rui_locations.jsonld")
corridors = load_json("../corridors.jsonld")



# unqiue rui locations, datasets, and cell types
# dict for corridors and associated AS
unique_rui_locations = set()
unique_datasets = set()
unique_cell_types = set()
unique_as_in_corridors = set()

as_counts_in_corridor = {}

# get unique datasets and cell types
for cell_summary in dataset_cell_summaries['@graph']:
unique_datasets.add(cell_summary['cell_source'])
for row in cell_summary['summary']:
unique_cell_types.add(row['cell_id'])

# get AS that collide with tissue blocks that form corridors
for donor in enriched_rui_locations['@graph']:
for sample in donor['samples']:
if "corridor" in sample['rui_location']:
for collision_item in sample['rui_location']['all_collisions']:
for collision in collision_item['collisions']:
unique_as_in_corridors.add(collision['as_3d_id'])



# get numbers of AS per corridor
for donor in enriched_rui_locations['@graph']:
for sample in donor['samples']:
if "corridor" in sample['rui_location']:
as_counts_in_corridor[sample['rui_location']
['corridor']['file']] = []
for collision_item in sample['rui_location']['all_collisions']:
for collision in collision_item['collisions']:
as_counts_in_corridor[sample['rui_location']['corridor']['file']].append(collision['as_3d_id'])

# print results for unique counts
print(f'''
Unique datasets: {len(unique_datasets)}
Unique cell types: {len(unique_cell_types)}
Unique enriched RUI locations: {len(count_rui_locations(enriched_rui_locations))}
Unique tissue blocks: {len(count_tissue_blocks(enriched_rui_locations))}
Unique AS in corridors: {len(unique_as_in_corridors)}
''')

# covering which unique eorgans

# print result for AS per corridor
for key in as_counts_in_corridor:
print(f'''Corridor {key} has {len(as_counts_in_corridor[key])} AS: ''')
for anatomical_structure in as_counts_in_corridor[key]:
print(f'''\tThose AS are: {anatomical_structure} AS: ''')


def count_tissue_blocks(response):
"""A function to count unique tissue blocks
Expand All @@ -61,9 +76,10 @@ def count_tissue_blocks(response):
result.add(sample['@id'])
except:
continue

return result



def count_rui_locations(response):
"""A function to count unique rui locations
Expand All @@ -73,17 +89,18 @@ def count_rui_locations(response):
Returns:
set: A set of unique RUI location IDs
"""

result = set()
for donor in response['@graph']:
for sample in donor['samples']:
try:
result.add(sample['rui_location']['@id'])
except:
continue

return result


def load_json(file_path):
"""A function to load a json file and return the data as a dict
Expand Down

0 comments on commit 4c2cfa2

Please sign in to comment.