|
@@ -9,47 +9,3 @@ https://surfer.nmr.mgh.harvard.edu/fswiki/HippocampalSubfields
|
|
|
>>> print(volume_file.read_volumes_mm3())
|
|
|
>>> print(volume_file.read_volumes_dataframe())
|
|
|
"""
|
|
|
-
|
|
|
-import argparse
|
|
|
-import os
|
|
|
-import re
|
|
|
-import typing
|
|
|
-
|
|
|
-import pandas
|
|
|
-
|
|
|
-from freesurfer_volume_reader.freesurfer import HippocampalSubfieldsVolumeFile
|
|
|
-
|
|
|
-
|
|
|
-def remove_group_names_from_regex(regex_pattern: str) -> str:
|
|
|
- return re.sub(r'\?P<.+?>', '', regex_pattern)
|
|
|
-
|
|
|
-
|
|
|
-def main():
|
|
|
- argparser = argparse.ArgumentParser(description=__doc__,
|
|
|
- formatter_class=argparse.RawDescriptionHelpFormatter)
|
|
|
- argparser.add_argument('--filename-regex', type=re.compile,
|
|
|
- default=remove_group_names_from_regex(
|
|
|
- HippocampalSubfieldsVolumeFile.FILENAME_PATTERN),
|
|
|
- help='default: %(default)s')
|
|
|
- argparser.add_argument('--output-format', choices=['csv'], default='csv',
|
|
|
- help='default: %(default)s')
|
|
|
- subjects_dir_path = os.environ.get('SUBJECTS_DIR', None)
|
|
|
- argparser.add_argument('root_dir_paths',
|
|
|
- metavar='ROOT_DIR',
|
|
|
- nargs='*' if subjects_dir_path else '+',
|
|
|
- default=[subjects_dir_path],
|
|
|
- help='default: $SUBJECTS_DIR ({})'.format(subjects_dir_path))
|
|
|
- args = argparser.parse_args()
|
|
|
- volume_files = [f for d in args.root_dir_paths
|
|
|
- for f in HippocampalSubfieldsVolumeFile.find(
|
|
|
- root_dir_path=d, filename_regex=args.filename_regex)]
|
|
|
- volume_frames = []
|
|
|
- for volume_file in volume_files:
|
|
|
- volume_frame = volume_file.read_volumes_dataframe()
|
|
|
- volume_frame['source_path'] = volume_file.absolute_path
|
|
|
- volume_frames.append(volume_frame)
|
|
|
- united_volume_frame = pandas.concat(volume_frames, ignore_index=True)
|
|
|
- print(united_volume_frame.to_csv(index=False))
|
|
|
-
|
|
|
-if __name__ == '__main__':
|
|
|
- main()
|