{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### Getting started ###\n", "This notebook provides a few examples of working with the IDR data.\n", "Functions can be found in [idr-py](https://github.com/IDR/idr-py/). Feel free\n", "to copy notebooks into the scratch space and edit as necessary.\n", "**All** changes should be considered temporary. Download a copy of\n", "notebooks and results when your session is complete." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Install dependencies if required\n", "The cell below will install dependencies if you choose to run the notebook in [Google Colab](https://colab.research.google.com/notebooks/intro.ipynb#recent=true)." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "%pip install idr-py" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "from IPython.display import display, Image\n", "from IPython import get_ipython\n", "from idr import connection\n", "from idr import images_by_phenotype, attributes_by_attributes\n", "from idr import simple_colocalisation\n", "get_ipython().run_line_magic('matplotlib', 'inline')" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "No handlers could be found for logger \"omero.gateway\"\n" ] } ], "source": [ "conn = connection('idr.openmicroscopy.org')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8KCwkMEQ8SEhEP\nERATFhwXExQaFRARGCEYGhwdHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4e\nHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCABAAEADASIA\nAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA\nAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3\nODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm\np6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA\nAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx\nBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK\nU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3\nuLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5EUVK\nq0iCpkWvtcLh+Y8+UhqpTwlSKtPC17tHBJoxcyDZSFKslaYy1pUwSS2EplYrk4zjPei5A3kAKAOP\nlOR+dSsvtUTCvExWFs7mkXd3EQVOgqGOrEYruwEE7CmyRBUgFIgqQV9RQpKxzNjdvtTGFWoDEH/f\nKxXHG31ps7xyOqqgRAeoXmisrO1vmSpu9rFaMqoYsCfTnp7/AP1qqzYLEgYHpWlqEFvFdOlrK88O\ncI0ieWzD3XJx+dZ0uNxwMDPSvnMTGLbkuptSkpe8uo2EAsMjNWgEO4odoH8LHmqcRweKsxENINxw\nCcE1jgm7pl1ETJ0qQdKe8IWIYOXBO788VEDX1GFrxnG6Oa6lsPPSmGgmmkjNa1qisNIklglU/NG2\nNu/j+761UkMSS7kBkX0YY/OnyO2fvHpjr2qu5r5rF3d+ZmtOL6kSGpkNV0NSqa8vCVrG8kWkkYch\nj6dacGqurU4NXvUcSkjFwJt1NZqjLU0tV1MUrAoiscnAqJzT0Y7wQQMc5NNuHRvmAAJ5IHQV4eKx\nF3Y0irOx/9k=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8KCwkMEQ8SEhEP\nERATFhwXExQaFRARGCEYGhwdHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4e\nHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCABAAEADASIA\nAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA\nAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3\nODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm\np6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA\nAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx\nBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK\nU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3\nuLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5GCjP\nFSKtIgqZFr7nCYa9jzpSsIqU8JUiIcZxx0zUgSvfw+DjJaGDmRlE2nA6Dr6moilWkTc4T1proQSD\n1FX9RSuhKZUZajIwCMVcaL5csQPbPNV3FeRicNHWxrGdxIxViIDI3dO+KhXGFx6VYRTuxjmujART\nViZsmKkYO3APT0pwFOjbKCMjHPUf4UpUqSvBx6V9Rgo6crVjlcgii3MewGMmo5Mk5PXvUwOEI9SK\nSQRc4z04IrSpT5ZNtCTdyo4qEgYbPpxVp1AAYsDk9B1qAhXkJY7R1wP5CvAx6jZ9jojIjt1DkAnA\nqeJyCGB5A4NVY84wB9anjNcWAcXuVNFqHo2Bk4wKevTPaooXKZwcHsR2NSb8qF9819Th6jTOaSdw\nY9DSNQTxTGNdVSotQSGPUL4GG9DzipiNwOCMjtUQ2mOUMSCACv1zXzeYVE0zaJXRiBgHg1KhxVZT\nUyvnGa8PB1eW1jeUSyrU8NUA+/hemeKljwGO4g4Havep45RiYSRKNpjY5+YH8xUTNSl1jbcDnnge\n1RSna5Gav67e4ox1B2qIvjPvQzVGxrysXXUkbRif/9k=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8KCwkMEQ8SEhEP\nERATFhwXExQaFRARGCEYGhwdHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4e\nHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCABAAEADASIA\nAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA\nAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3\nODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm\np6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA\nAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx\nBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK\nU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3\nuLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5AhKq\nxJGRtI/SppY9iBCCCGP8hUKLk4qYlmPzV69GjzSRxy3GqMVLEyo24xgnHAPTPrTsKECgZPUn3o2E\nHBBFerTwqmtTNyuREZOTRIWdtzEk+tS7aaVreWEXYFIgIpUO0kEbgwxinsKayMF3YO0nAPvXn16C\nsXe41RUqilIEkfmL1H3x7+tWEt0EJeS4RHBwI8Esf8KrCuKSuTKaW5EnGDVu/jVLyQI25ThlOOoI\nosTZsDDdhkB+7MgyVPuO4/X0pLjPm4Lq+AAGXoQO9e7Rjea0/rQ53K8yDFTILQQEyea0p6BcAD60\nymkV0VaKktxvUWeSFoFjjtljYHLPnJNV5PMWMISdhO4D+tSgqAcgk9qilbcByeBgV42IpqOiNIK2\ngRtvcBtqcdlxnFWY1Nw807DoQxA46nFVjHtXhgx9hVwq8ZliZ/3kIG3I7df61w4eaVuX+thVGugP\nCguWijlBTPyswx+dPe1njQO0fykZyCDx61FjZcL54YqSCxXqw9qv+TauhNtcSQBgSEl/i54AI68e\nte5Cu4KOv4f5HPObjYoohYnAPAJqNqnlLxTSK4w+CrCoJHLYJ7DFdbqN69DSN3qRtUbcmr8On3Nx\npd3qMYUw2jxrNz8w8wsFOPTK4J9x61UhYRt5ufnUgr7H1rycVVVnbdGkZp3S1a0/X9QRkRMlmMhP\nBxwFx/OlecvctMwB3HOCarQn5wD9KUGvJwtkzRwVzQWWCQgyApGvSND/AC9KjllDt8qBFHRR2qsD\nTt1evRnGOpn7NJkhYmmk03d7U6NTITgrkDOCcZraeISQ7WJYL65t7a6toZSsV2ixzrgEOqsGA/Bl\nBqpyTgAknoBT5yPMJGMHkYOajDsh3KSD615laomm1uyoRSu0tz//2Q==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8KCwkMEQ8SEhEP\nERATFhwXExQaFRARGCEYGhwdHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4e\nHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCABAAEADASIA\nAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA\nAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3\nODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm\np6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA\nAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx\nBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK\nU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3\nuLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5HRal\nVaRQM8Zx71PGtfomCwqkkeZOQipTxHUqLUsUW9wvTJ6+lfSUcBHlu0YSqWK8cQaRVZgikgFj2HrR\ncQrHPIiSLKqsQrqMBgD1H1q3cW7QytG+CVOODkVCyVpLAJrmWxMal9U9CmyVE61cdagkWvExmEUT\neMhIxVmMVBFVmMV25bTTsRUZKgrQ0qJGuCxu47aRFLxtIPlZh/CT2zVJBUqivrqVBShy9zjqe8mh\nJCXcu3Vjk1Gy1Nio2Fb1KMYxskOLKziq8gq3IKrSV8zmFNWZ0QZHFVqOqkdWYzXDls0rF1CylSjp\nUCGpQa+ww9RWOSSH0xqCaYxrWrVVhJEclV5KmkNV5DXzOYTTTOmCIYzU8ZqqhqZGr5/BV1GxvOJb\nRqkDVVVqeHr6WhjFY53AnLU1mqLfTWerqY1W3EoDyQW+Y4Hc1XkNSzTloUiCqqpk8dWJ7mqztXg4\nvE81zaEX1P/Z\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8KCwkMEQ8SEhEP\nERATFhwXExQaFRARGCEYGhwdHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4e\nHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCABAAEADASIA\nAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA\nAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3\nODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm\np6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA\nAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx\nBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK\nU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3\nuLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD5BVRg\nHLY707GS20nHfNIpI4xgetPUds969/D0r6nG2KegwOnWh1GKkOMZzn2oYblCqBx+tdsKCTI5iLGF\nI65HbtTWA29CGFSthXyvIHr3psgJ+bBAxVyojTIwoKEnnHao35Gc+1SgHk5wB1pm3kZNefXppFpj\n1yTtIHPepQpCndkbah649hzUsZyMHvXTQjZJkyJNu1mUck8CgsQcLxxg0iMd+c4460FyQBnj0r0q\ncO5nYaMA8jIodyUVOdq9Bmg02takVuUNcY2g9CM0yTOc9PSpQcuDgdMc1HI7FiWOT3rx661LjcEI\nC5A+uakyCBgY9s1EuNuDxTl6ZzSw7QNExClNwOCDyvt60qIWO3IB96YcggE44pdyb+RhcYr0YVHb\nQzHIuSVKMx9u1MZSrbSMGnOSkgIY8dxRI7StuLsxHPNKdV7gr3I3JRiB09KhY5NOY9zSFe/auCvJ\nJXNYqwincACamXCpnvVZWHpUoPGTnPauGFQckSkjGQcnrzTWYu2T1qMnB46UqHkGu6FayuTyjiTj\nnpRkbcZwD1prEknByAOtI5HQUpVxpDiUYHcSD2pjnHO7J+lNJpCen0rjrVLlKJ//2Q==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "images = images_by_phenotype(conn, \"CMPO_0000077\")\n", "display(*tuple([Image(img.getThumbnail()) for img in images[100:2500:500]]))" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nLNOz4tC4AAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "simple_colocalisation(images[999])" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{('Gene Symbol', 'CDC14'): [('Phenotype Term Accession', 'CMPO_0000427'),\n", " ('Phenotype Term Accession', 'CMPO_0000397'),\n", " ('Phenotype', 'altered kinetochore foci'),\n", " ('Phenotype Term Name', 'protein localized in nucleolus phenotype'),\n", " ('Phenotype Term Name', 'kinetochore phenotype'),\n", " ('Phenotype Term Accession URL', 'http://www.ebi.ac.uk/cmpo/CMPO_0000397'),\n", " ('Phenotype', 'GFP localization: nucleolus'),\n", " ('Phenotype Term Accession URL', 'http://www.ebi.ac.uk/cmpo/CMPO_0000427')],\n", " ('Gene Symbol', 'cdc14'): [('Phenotype Term Accession', 'CMPO_0000416'),\n", " ('Phenotype Term Accession URL', 'http://www.ebi.ac.uk/cmpo/CMPO_0000416'),\n", " ('Phenotype', 'defective cell-cell aggregation'),\n", " ('Phenotype Term Name', 'fewer aggregated cells in population phenotype')]}" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "args = {\n", " \"name\": \"Gene Symbol\",\n", " \"value\": \"cdc14\",\n", " \"ns\": \"openmicroscopy.org/mapr/gene\",\n", " \"ns2\": \"openmicroscopy.org/mapr/phenotype\",\n", " # \"name2\": \"Phenotype Term Accession\", # optional\n", "}\n", "attributes_by_attributes(conn, **args)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Close the connection to IDR" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "conn.close()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### License (BSD 2-Clause)ΒΆ\n", "\n", "Copyright (C) 2016-2021 University of Dundee. All Rights Reserved.\n", "\n", "Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n", "\n", "Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.10" } }, "nbformat": 4, "nbformat_minor": 2 }