{"nbformat_minor": 1, "metadata": {"kernelspec": {"name": "python3", "display_name": "Python 3", "language": "python"}, "language_info": {"nbconvert_exporter": "python", "codemirror_mode": {"name": "ipython", "version": 3}, "version": "3.6.1", "mimetype": "text/x-python", "file_extension": ".py", "pygments_lexer": "ipython3", "name": "python"}}, "nbformat": 4, "cells": [{"execution_count": null, "metadata": {"_cell_guid": "ff50b288-ec32-4a8d-aada-1252a233fc4d", "_uuid": "ec5d2d99d1bdfc81a65bf2a342579540f9ec0f7d", "collapsed": true}, "source": ["import numpy as np\n", "import pandas as pd\n", "import io\n", "import bson\n", "import matplotlib.pyplot as plt\n", "from skimage.data import imread"], "cell_type": "code", "outputs": []}, {"execution_count": null, "metadata": {"collapsed": true}, "source": ["categories = pd.read_csv('../input/category_names.csv', index_col='category_id')"], "cell_type": "code", "outputs": []}, {"execution_count": null, "metadata": {}, "source": ["rows, cols = 15, 8\n", "\n", "with open('../input/train.bson', 'rb') as f:\n", "    data = bson.decode_file_iter(f)\n", "\n", "    fig, ax = plt.subplots(rows, cols, figsize=(cols * 2, rows * 2))\n", "    ax = ax.ravel()\n", "\n", "    i = 0\n", "    try:\n", "        for c, d in enumerate(data):\n", "            product_id = d['_id']\n", "            category_id = d['category_id']\n", "            for e, pic in enumerate(d['imgs']):\n", "                picture = imread(io.BytesIO(pic['picture']))\n", "                ax[i].imshow(picture)\n", "                ax[i].set_title(categories.loc[category_id, 'category_level3'][:12] + ' ('+ str(e) + ')')\n", "                i = i + 1\n", "\n", "    except IndexError:\n", "        plt.tight_layout()"], "cell_type": "code", "outputs": []}, {"execution_count": null, "metadata": {"collapsed": true}, "source": [], "cell_type": "code", "outputs": []}]}