{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# Login to Synapse\n1. Sign up for the segmentation task [here](https://www.synapse.org/brats2021)\n2. Add login details into kaggle secrets in Add-ons.","metadata":{}},{"cell_type":"code","source":"!pip install synapseclient\nimport os\nimport time\nimport zipfile\nimport synapseclient\nfrom kaggle_secrets import UserSecretsClient\nuser_secrets = UserSecretsClient()\nsecret_value_0 = user_secrets.get_secret(\"password\")\nsecret_value_1 = user_secrets.get_secret(\"synapse_username\")\nsyn = synapseclient.Synapse()\nsyn.login(secret_value_1, secret_value_0) ","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Download Training and Validation zip files from Synapse servers","metadata":{}},{"cell_type":"code","source":"t = time.time()\ntrain_obj = syn.get(entity='syn25956772')\ntest_obj = syn.get(entity='syn26017056')\nprint(f'Time elapsed in acquiring data from Synapse.org is', time.time()-t)\ntrain_path = train_obj.path\ntest_path = test_obj.path\nprint(train_path)\nprint(test_path)","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Extract the zip files","metadata":{}},{"cell_type":"code","source":"t = time.time()\nwith zipfile.ZipFile(train_path, 'r') as zip_ref:\n    zip_ref.extractall('./')\nwith zipfile.ZipFile(test_path, 'r') as zip_ref:\n    zip_ref.extractall('./')\nprint(f'Time elapsed in extracting the zip files is', time.time()-t)\n\nos.rename('./RSNA_ASNR_MICCAI_BraTS2021_TrainingData_16July2021', './train')\nos.rename('./RSNA_ASNR_MICCAI_BraTS2021_ValidationData', './test')","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Compare Patient IDs of task 1 and 2 data to find missing data in classification task","metadata":{}},{"cell_type":"code","source":"segment_train_data_path = './train/'\nsegment_test_data_path = './test/'\n\nfor i, name in enumerate(os.listdir(segment_train_data_path)):\n    dst = name.replace('BraTS2021_','')\n    src = segment_train_data_path + name\n    dst = segment_train_data_path + dst\n    os.rename(src, dst)\n    \nfor i, name in enumerate(os.listdir(segment_test_data_path)):\n    dst = name.replace('BraTS2021_','')\n    src = segment_test_data_path + name\n    dst = segment_test_data_path + dst\n    os.rename(src, dst)\n\nsegment_train_data = sorted(os.listdir(segment_train_data_path))\nsegment_test_data = sorted(os.listdir(segment_test_data_path))\n\nclass_train_data_path = '../input/rsna-miccai-brain-tumor-radiogenomic-classification/train'\nclass_test_data_path = '../input/rsna-miccai-brain-tumor-radiogenomic-classification/test'\n\nclass_train_data = sorted(os.listdir(class_train_data_path))\nclass_test_data = sorted(os.listdir(class_test_data_path))\n\n\nsegment_train_set = set(segment_train_data)\nsegment_test_set = set(segment_test_data)\n\nclass_train_set = set(class_train_data)\nclass_test_set = set(class_test_data)\n\nextra_in_seg_train = list(sorted(segment_train_set-class_train_set))\nextra_in_seg_test = list(sorted(segment_test_set-class_test_set))\n\nextra_in_class_train = list(sorted(class_train_set-segment_train_set))\nextra_in_class_test = list(sorted(class_test_set-segment_test_set))\n\n# No. of extra elements in respective datasets\nprint('No. of extra elements in seg_train dataset', len(extra_in_seg_train))\nprint('No. of extra elements in seg_test dataset', len(extra_in_seg_test))\nprint('No. of extra elements in class_train dataset', len(extra_in_class_train))\nprint('No. of extra elements in class_test dataset', len(extra_in_class_test))\n\n# print(extra_in_seg_train)\n# print(extra_in_seg_test)\n\n# print(any(item in class_test_data for item in segment_train_data))","metadata":{"trusted":true},"execution_count":null,"outputs":[]}]}