comparison extract_tables.py @ 10:480d9e9d156b draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ena_upload commit dccd4c0668ec8ce1b1c8fd9cef4dcf3a99dc78b3
author iuc
date Fri, 27 Oct 2023 19:44:40 +0000
parents a62c4a11a67d
children
comparison
equal deleted inserted replaced
9:a62c4a11a67d 10:480d9e9d156b
38 dt_oobj = datetime.now(tz=None) 38 dt_oobj = datetime.now(tz=None)
39 timestamp = dt_oobj.strftime("%Y%m%d_%H:%M:%S") 39 timestamp = dt_oobj.strftime("%Y%m%d_%H:%M:%S")
40 for study_index, study in enumerate(studies_dict): 40 for study_index, study in enumerate(studies_dict):
41 study_alias = 'study_' + str(study_index) + '_' + timestamp 41 study_alias = 'study_' + str(study_index) + '_' + timestamp
42 studies_table.write('\t'.join([study_alias, action, study['title'], 42 studies_table.write('\t'.join([study_alias, action, study['title'],
43 study['type'], study['abstract'], study['pubmed_id'], 43 study['type'], study['abstract'], study['pubmed_id']]))
44 ])) 44 if "host_subject_id" in study['samples'][0].keys(): # sample belongs to a viral sample
45 if "geo_location" in study['samples'][0].keys(): # sample belongs to a viral sample
46 samples_table.write('\t'.join(['alias', 'status', 'title', 'scientific_name', 45 samples_table.write('\t'.join(['alias', 'status', 'title', 'scientific_name',
47 'taxon_id', 'sample_description', 'collection date', 46 'taxon_id', 'sample_description', 'collection date',
48 'geographic location (country and/or sea)', 'host common name', 'host subject id', 47 'geographic location (country and/or sea)', 'host common name', 'host subject id',
49 'host health state', 'host sex', 'host scientific name', 48 'host health state', 'host sex', 'host scientific name',
50 'collector name', 'collecting institution', 'isolate', 49 'collector name', 'collecting institution', 'isolate']) + '\n')
51 ]) + '\n')
52 else: 50 else:
53 samples_table.write('\t'.join(['alias', 'status', 'title', 'scientific_name', 51 samples_table.write('\t'.join(['alias', 'status', 'title', 'scientific_name',
54 'taxon_id', 'sample_description']) + '\n') 52 'taxon_id', 'sample_description', 'collection date',
53 'geographic location (country and/or sea)']) + '\n')
55 for sample_index, sample in enumerate(study['samples']): 54 for sample_index, sample in enumerate(study['samples']):
56 sample_alias = 'sample_' + str(sample_index) + '_' + timestamp 55 sample_alias = 'sample_' + str(sample_index) + '_' + timestamp
57 if "geo_location" in sample.keys(): # sample belongs to a viral sample 56 if "host_subject_id" in sample.keys(): # sample belongs to a viral sample
58 if sample['collector_name'] == '': 57 if sample['collector_name'] == '':
59 sample['collector_name'] = 'unknown' 58 sample['collector_name'] = 'unknown'
60 samples_table.write('\t'.join([sample_alias, action, sample['title'], 59 samples_table.write('\t'.join([sample_alias, action, sample['title'],
61 sample['tax_name'], sample['tax_id'], 60 sample['tax_name'], sample['tax_id'],
62 sample['description'], sample['collection_date'], 61 sample['description'], sample['collection_date'],
63 sample['geo_location'], sample['host_common_name'], 62 sample['geo_location'], sample['host_common_name'],
64 sample['host_subject_id'], sample['host_health_state'], 63 sample['host_subject_id'], sample['host_health_state'],
65 sample['host_sex'], sample['host_scientific_name'], 64 sample['host_sex'], sample['host_scientific_name'],
66 sample['collector_name'], 65 sample['collector_name'],
67 sample['collecting_institution'], sample['isolate'], 66 sample['collecting_institution'], sample['isolate']
68 ]) + '\n') 67 ]) + '\n')
69 else: 68 else:
70 samples_table.write('\t'.join([sample_alias, action, sample['title'], 69 samples_table.write('\t'.join([sample_alias, action, sample['title'],
71 sample['tax_name'], sample['tax_id'], 70 sample['tax_name'], sample['tax_id'],
72 sample['description']]) + '\n') 71 sample['description'], sample['collection_date'],
72 sample['geo_location']]) + '\n')
73 for exp_index, exp in enumerate(sample['experiments']): 73 for exp_index, exp in enumerate(sample['experiments']):
74 exp_alias = 'experiment_' + str(exp_index) + '.' + str(sample_index) + '_' + timestamp 74 exp_alias = 'experiment_' + str(exp_index) + '.' + str(sample_index) + '_' + timestamp
75 lib_alias = 'library_' + str(exp_index) + '_' + str(sample_index) 75 lib_alias = 'library_' + str(exp_index) + '_' + str(sample_index)
76 experiments_table.write('\t'.join([exp_alias, action, exp['title'], 76 experiments_table.write('\t'.join([exp_alias, action, exp['title'],
77 study_alias, sample_alias, exp['experiment_design'], 77 study_alias, sample_alias, exp['experiment_design'],
78 lib_alias, exp['library_strategy'], 78 lib_alias, exp['library_strategy'],
79 exp['library_source'], exp['library_selection'], 79 exp['library_source'], exp['library_selection'],
80 exp['library_layout'].lower(), exp['insert_size'], 80 exp['library_layout'].lower(), exp['insert_size'],
81 exp['library_construction_protocol'], 81 exp['library_construction_protocol'],
82 exp['platform'], exp['instrument_model'], 82 exp['platform'], exp['instrument_model']]) + '\n')
83 ]) + '\n')
84 run_index = 0 83 run_index = 0
85 # exp['runs'] is a list of lists 84 # exp['runs'] is a list of lists
86 for (base_run, run_files) in exp['runs']: 85 for (base_run, run_files) in exp['runs']:
87 run_index += 1 86 run_index += 1
88 if base_run != '': 87 if base_run != '':