{"cells":[{"metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true},"cell_type":"code","source":"import numpy as np\nimport pandas as pd\nimport seaborn as sns\nimport matplotlib.pyplot as plt\nimport collections\nimport cv2\nimport os\nfrom IPython.display import Image\nfrom IPython.display import display\nprint(os.listdir(\"../input\"))\nimport imagesize","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train_df = pd.read_csv('../input/train.csv')\ntrain_df.head()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train_df.describe()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"print(\"num_train=\", len(train_df))\nsns.distplot(train_df['diagnosis'], kde=False, rug=False, bins=None) ","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"test_df = pd.read_csv('../input/test.csv')\ntest_df.head()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"print(\"num_test=\", len(test_df))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Image size distribution"},{"metadata":{"trusted":true},"cell_type":"code","source":"target_dirs = ['../input/train_images', '../input/test_images']\nfig, (ax1, ax2) = plt.subplots(2, 1, figsize=(20,20), sharex=True)\nfor target_dir, ax in zip(target_dirs, [ax1, ax2]):\n    # imagesize library doesn't read whole image, but metadata.\n    shapes = [[str(imagesize.get(\"{}/{}\".format(target_dir, path)))] for path in os.listdir(target_dir)]\n\n    shapes_df = pd.DataFrame.from_records(shapes, columns=['image_size'])\n    shapes_df['image_size'] = pd.Categorical(shapes_df.image_size)\n    sns.countplot(shapes_df['image_size'], ax=ax).set_title(target_dir) \n    ","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Can you as human classify them?"},{"metadata":{"trusted":true},"cell_type":"code","source":"def display_by_diagnosis(diagnosis):\n    target_class_df = train_df[train_df['diagnosis'] == diagnosis]\n\n    images = [Image(filename='../input/train_images/{}.png'.format(target_class_df.iloc[i].id_code), width=100, height=100) for i in range(0, 5)]\n    display(*images)    ","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"### No DR"},{"metadata":{"trusted":true},"cell_type":"code","source":"display_by_diagnosis(diagnosis=0)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"### Proliferative DR"},{"metadata":{"trusted":true},"cell_type":"code","source":"display_by_diagnosis(diagnosis=4)","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"name":"python","version":"3.6.4","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"}},"nbformat":4,"nbformat_minor":1}