{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# XMM-LSS master catalogue\n", "\n", "This notebook presents the merge of the various pristine catalogues to produce the HELP master catalogue on XMM-LSS." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "This notebook was run with herschelhelp_internal version: \n", "33f5ec7 (Wed Dec 6 16:56:17 2017 +0000)\n" ] } ], "source": [ "from herschelhelp_internal import git_version\n", "print(\"This notebook was run with herschelhelp_internal version: \\n{}\".format(git_version()))" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "#%config InlineBackend.figure_format = 'svg'\n", "\n", "import matplotlib.pyplot as plt\n", "plt.rc('figure', figsize=(10, 6))\n", "\n", "import os\n", "import time\n", "\n", "from astropy import units as u\n", "from astropy.coordinates import SkyCoord\n", "from astropy.table import Column, Table\n", "import numpy as np\n", "from pymoc import MOC\n", "\n", "from herschelhelp_internal.masterlist import merge_catalogues, nb_merge_dist_plot, specz_merge\n", "from herschelhelp_internal.utils import coords_to_hpidx, ebv, gen_help_id, inMoc" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "TMP_DIR = os.environ.get('TMP_DIR', \"./data_tmp\")\n", "OUT_DIR = os.environ.get('OUT_DIR', \"./data\")\n", "SUFFIX = os.environ.get('SUFFIX', time.strftime(\"_%Y%m%d\"))\n", "\n", "try:\n", " os.makedirs(OUT_DIR)\n", "except FileExistsError:\n", " pass" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## I - Reading the prepared pristine catalogues" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#candels = Table.read(\"{}/CANDELS.fits\".format(TMP_DIR)) # 1.1\n", "#cfht_wirds = Table.read(\"{}/CFHT-WIRDS.fits\".format(TMP_DIR)) # 1.3\n", "#cfhtls_wide = Table.read(\"{}/CFHTLS-WIDE.fits\".format(TMP_DIR)) # 1.4a\n", "#cfhtls_deep = Table.read(\"{}/CFHTLS-DEEP.fits\".format(TMP_DIR)) # 1.4b\n", "#We no longer use CFHTLenS as it is the same raw data set as CFHTLS-WIDE\n", "# cfhtlens = Table.read(\"{}/CFHTLENS.fits\".format(TMP_DIR)) # 1.5\n", "#decals = Table.read(\"{}/DECaLS.fits\".format(TMP_DIR)) # 1.6\n", "#servs = Table.read(\"{}/SERVS.fits\".format(TMP_DIR)) # 1.8\n", "#swire = Table.read(\"{}/SWIRE.fits\".format(TMP_DIR)) # 1.7\n", "hsc_wide = Table.read(\"{}/HSC-WIDE.fits\".format(TMP_DIR)) # 1.9a\n", "hsc_deep = Table.read(\"{}/HSC-DEEP.fits\".format(TMP_DIR)) # 1.9b\n", "hsc_udeep = Table.read(\"{}/HSC-UDEEP.fits\".format(TMP_DIR)) # 1.9c\n", "#ps1 = Table.read(\"{}/PS1.fits\".format(TMP_DIR)) # 1.10\n", "#sxds = Table.read(\"{}/SXDS.fits\".format(TMP_DIR)) # 1.11\n", "#sparcs = Table.read(\"{}/SpARCS.fits\".format(TMP_DIR)) # 1.12\n", "#dxs = Table.read(\"{}/UKIDSS-DXS.fits\".format(TMP_DIR)) # 1.13\n", "#uds = Table.read(\"{}/UKIDSS-UDS.fits\".format(TMP_DIR)) # 1.14\n", "#vipers = Table.read(\"{}/VIPERS.fits\".format(TMP_DIR)) # 1.15\n", "#vhs = Table.read(\"{}/VISTA-VHS.fits\".format(TMP_DIR)) # 1.16\n", "#video = Table.read(\"{}/VISTA-VIDEO.fits\".format(TMP_DIR)) # 1.17\n", "#viking = Table.read(\"{}/VISTA-VIKING.fits\".format(TMP_DIR)) # 1.18" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## II - Merging tables\n", "\n", "We first merge the optical catalogues and then add the infrared ones. We start with PanSTARRS because it coevrs the whole field.\n", "\n", "At every step, we look at the distribution of the distances separating the sources from one catalogue to the other (within a maximum radius) to determine the best cross-matching radius." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Start with HSC-WIDE" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue = hsc_wide\n", "master_catalogue['hsc-wide_ra'].name = 'ra'\n", "master_catalogue['hsc-wide_dec'].name = 'dec'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add HSC-DEEP" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(hsc_deep['hsc-deep_ra'], hsc_deep['hsc-deep_dec'])\n", ")" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Given the graph above, we use 0.8 arc-second radius\n", "master_catalogue = merge_catalogues(master_catalogue, hsc_deep, \"hsc-deep_ra\", \"hsc-deep_dec\", radius=0.8*u.arcsec)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add HSC-UDEEP" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nhfqeE+lpvfGvf6bqiqi++6lrF90m4nSX+4rl/Ve3SpImp6Z1+0P79Tc/flGTU65Xn92g689r1HXn\nNmrTqsplN9l+Ij2tA93D2ts5pGfa+/V0W7+ebuvTQNDKoaqiXFs31qmiPKJNqyrVUptQZJm1AQGA\nUpT9vTSfnQd69Nu37dCqqpju3H7Nkltb2Mx2uvvW+Y7L6c96M9sm6QuSIpK+5u6fm7Pfgv1vkzQi\n6Xfc/fFczl0Kxian9KWf7NGhnlHd/rsXLbu+XGcqGinTx15/lt512Vrd+uA+/fT5Tv3X7+yWJLXW\nJ3XduY26cG2NNjQktaGhUmtq4kX9TNxdPcMT6ugf0+G+UR0ZGFN736j2dQ3rpa4hHege0dR05o+H\nMpNW18R13uqaYGmdhJqq44QsAFjGXrWhXl//yFX67b/PjHj980eu1vpl1rhcymGky8wikl6U9GZJ\nbZJ2SLrJ3XfPOuZtkj6lTOi6WtIX3P3qXM49mbBGuo4OjOmfHz6gOx45qO7hCb3pgmb93YdelZeR\nnqU40nU6PcMTevHooIbH0/rlS90anZya2ReLlGl9fUKN1RVKJaKqTcSUSkaVSkSVjEVUUR5RrLxM\nFeVlipWXqbzMZCaZTMF/5C6lp13pqWlNBt8n0tManZzSyMSURicy30cm0uodmVDfyKT6RiZnHk9M\nTZ9QbzRi2tBQqXMaq3R2U6U6B8bVVB1XU01FyV0aBoBSletIV9YTB3v1ob9/VCOTU7r2nFV656Vr\n9ZYtzUVvRp3Pka6rJO11933BC98l6d2SZgend0v6umcS3MNmVmtmayRtzOHc0D15qE//8NDL+t7T\nHZpy1xvPb9aHX7tRrz67YdldWsuX+sqYrjmrQVKmzUT/yKS6hyfUMzyh7uFx9QxP6Ej/mPZ1DctM\n6huZ1Hh6ep5XzV2ZZUbgYuVlSkQjSsbKlYxF1Fqf1HmrI0oloqqJR1UbhL3KivIT7ipsqV1+f/EA\nAM7M5a11+s6nrtU3Hzuk7zx9WH/0v59S7J4yXX9eo163eZUaqipUXxmb+apLxpbUlY5cQleLpEOz\nnrcpM5o13zEtOZ4bKnfXH37zSR0dGNcHX71Bv/OajSU5kXwxysxUVxlTXeXpO6xPTk1rMp0ZuZoK\nRq/S065pd2UHULPjqCaprMwUMVNZmRQxU6TMFCsvUyxSpkiZrdjACwDI3cZVlfrP287XH/+H8/Tk\noT5956kOfffpw/rh7qOvODYWKdML/8+2JfP7ZcncqmVm2yVtD54OmdkLhX7PXZL+onAvv0rSscK9\nPObg8w4Xn3d4+KzDxecdog+E8B5l/y2EN5Fy6jyeS+hqlzS7adW6YFsux0RzOFeS5O63Sro1h3qW\nBTN7LJfru8gPPu9w8XmHh886XHzeKKRcZhzvkLTZzDaZWUzSjZLunXPMvZI+ZBnXSOp3944czwUA\nACh58450uXvazD4p6X5l2j7c5u67zOzmYP8tku5T5s7Fvcq0jPjd051bkJ8EAABgCctpTpe736dM\nsJq97ZZZj13SJ3I9d4UomUulywSfd7j4vMPDZx0uPm8UzJLsSA8AAFBq6CIJAAAQAkJXAZjZNjN7\nwcz2mtlnil1PKTOz28ys08yeLXYtpc7M1pvZT81st5ntMrNPF7umUmZmcTN71MyeCj7v/1rsmkqd\nmUXM7Akz+26xa0FpInTlWbD00VckvVXShZJuMrMLi1tVSbtd0rZiF7FCpCX9obtfKOkaSZ/gf9sF\nNS7pDe5+qaTLJG0L7g5H4Xxa0nPFLgKli9CVfzPLJrn7hKTs0kcoAHd/UFJPsetYCdy9I7uQvbsP\nKvPLqaW4VZUuzxgKnkaDLybhFoiZrZP0dklfK3YtKF2Ervw71ZJIQMkws42SLpf0SHErKW3B5a4n\nJXVK+pG783kXzt9I+s+S8reoLDAHoQvAGTGzKkl3S/pP7j5Q7HpKmbtPuftlyqzmcZWZXVTsmkqR\nmb1DUqe77yx2LShthK78y2XZJGBZMrOoMoHrG+5+T7HrWSncvU/ST8X8xUJ5raR3mdl+ZaaEvMHM\n/rm4JaEUEbryj6WPUJLMzCT9vaTn3P2vi11PqTOzRjOrDR4nJL1Z0vPFrao0ufufuPs6d9+ozL/Z\nP3H33ypyWShBhK48c/e0pOzSR89J+iZLHxWOmd0p6VeSzjOzNjP7SLFrKmGvlfRBZUYBngy+3lbs\nokrYGkk/NbOnlflj7kfuTisDYBmjIz0AAEAIGOkCAAAIAaELAAAgBIQuAACAEBC6AAAAQkDoAgAA\nCAGhCwAAIASELgCLYmZTQc+uXWb2lJn9oZmVBfu2mtkXT3PuRjN7f3jVvuK9R4O1DZcEM3ufme01\nM/pxASWI0AVgsUbd/TJ336JM1/S3SvqsJLn7Y+7++6c5d6OkooSuwEvB2oY5M7NIoYpx93+R9NFC\nvT6A4iJ0Acgbd++UtF3SJy3j+uyojZldN6uT/RNmVi3pc5JeF2z7g2D06d/N7PHg6zXBudeb2c/M\n7F/N7Hkz+0awLJHM7Eoz+2UwyvaomVWbWcTMPm9mO8zsaTP7j7nUb2bfNrOdwajd9lnbh8zsf5rZ\nU5JefYr33BI8fjJ4z83Bub81a/vfZkObmW0LfsanzOyBPP7XAGCJKi92AQBKi7vvC4JF05xdfyTp\nE+7+kJlVSRqT9BlJf+Tu75AkM0tKerO7jwWh5U5JW4PzL5e0RdJhSQ9Jeq2ZPSrpXyS9z913mFmN\npFFJH5HU7+5XmlmFpIfM7Ifu/vI85X/Y3XuCtQ53mNnd7t4tqVLSI+7+h8Gaqs+f5D1vlvQFd/9G\ncEzEzC6Q9D5Jr3X3STP7qqQPmNn3Jf2dpNe7+8tmVn/GHzSAZYfQBSAsD0n6azP7hqR73L0tGKya\nLSrpy2Z2maQpSefO2veou7dJUjAPa6Okfkkd7r5Dktx9INj/FkmXmNl7g3NTkjZLmi90/b6ZvSd4\nvD44pzuo5e5g+3mneM9fSfpTM1sX/Hx7zOyNkl6lTICTpISkTknXSHowGwLdvWeeugCUAEIXgLwy\ns7OUCSmdki7Ibnf3z5nZ9yS9TZmRp/9wktP/QNJRSZcqM/1hbNa+8VmPp3T6f79M0qfc/f4zqPt6\nSW+S9Gp3HzGzn0mKB7vH3H3qdOe7+x1m9oikt0u6L7ikaZL+0d3/ZM57vTPXugCUDuZ0AcgbM2uU\ndIukL7u7z9l3trs/4+7/XdIOSedLGpRUPeuwlDKjSNOSPihpvknrL0haY2ZXBu9RbWblku6X9HEz\niwbbzzWzynleKyWpNwhc5yszGpXzewZhc5+7f1HSv0m6RNIDkt5rZk3BsfVmtkHSw5Jeb2abstvn\nqQ1ACWCkC8BiJYLLfVFJaUn/JOmvT3LcfzKzGyRNS9ol6fvB46lggvrtkr4q6W4z+5CkH0gaPt0b\nu/uEmb1P0peCeVijyoxWfU2Zy4+PBxPuuyT92jw/xw8k3WxmzykTrB4+w/f8TUkfNLNJSUck/bdg\nftifSfqhZdpoTCozr+3hYKL+PcH2TmXu/ARQwmzOH6MAsCKY2UZJ33X3i4pcygmCy5wzNxcAKB1c\nXgSwUk1JStkSa46qzGhfb7FrAZB/jHQBAACEgJEuAACAEBC6AAAAQkDoAgAACAGhCwAAIASELgAA\ngBD8/+1wCubZBZytAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(hsc_udeep['hsc-udeep_ra'], hsc_udeep['hsc-udeep_dec'])\n", ")" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue = merge_catalogues(master_catalogue, hsc_udeep, \"hsc-udeep_ra\", \"hsc-udeep_dec\", radius=0.8*u.arcsec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Cleaning\n", "\n", "When we merge the catalogues, astropy masks the non-existent values (e.g. when a row comes only from a catalogue and has no counterparts in the other, the columns from the latest are masked for that row). We indicate to use NaN for masked values for floats columns, False for flag columns and -1 for ID columns." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": true }, "outputs": [], "source": [ "for col in master_catalogue.colnames:\n", " if \"m_\" in col or \"merr_\" in col or \"f_\" in col or \"ferr_\" in col or \"stellarity\" in col:\n", " master_catalogue[col] = master_catalogue[col].astype(float)\n", " master_catalogue[col].fill_value = np.nan\n", " elif \"flag\" in col:\n", " master_catalogue[col].fill_value = 0\n", " elif \"id\" in col:\n", " master_catalogue[col].fill_value = -1\n", " \n", "master_catalogue = master_catalogue.filled()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#Since this is not the final merged catalogue. We rename column names to make them unique\n", "master_catalogue['ra'].name = 'hsc_ra'\n", "master_catalogue['dec'].name = 'hsc_dec'\n", "master_catalogue['flag_merged'].name = 'hsc_flag_merged'" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "<Table length=10>\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
idxhsc-wide_idhsc_rahsc_decm_ap_hsc-wide_gmerr_ap_hsc-wide_gm_hsc-wide_gmerr_hsc-wide_gm_ap_hsc-wide_rmerr_ap_hsc-wide_rm_hsc-wide_rmerr_hsc-wide_rm_ap_hsc-wide_imerr_ap_hsc-wide_im_hsc-wide_imerr_hsc-wide_im_ap_hsc-wide_zmerr_ap_hsc-wide_zm_hsc-wide_zmerr_hsc-wide_zm_ap_hsc-wide_ymerr_ap_hsc-wide_ym_hsc-wide_ymerr_hsc-wide_yhsc-wide_stellarityf_ap_hsc-wide_gferr_ap_hsc-wide_gf_hsc-wide_gferr_hsc-wide_gflag_hsc-wide_gf_ap_hsc-wide_rferr_ap_hsc-wide_rf_hsc-wide_rferr_hsc-wide_rflag_hsc-wide_rf_ap_hsc-wide_iferr_ap_hsc-wide_if_hsc-wide_iferr_hsc-wide_iflag_hsc-wide_if_ap_hsc-wide_zferr_ap_hsc-wide_zf_hsc-wide_zferr_hsc-wide_zflag_hsc-wide_zf_ap_hsc-wide_yferr_ap_hsc-wide_yf_hsc-wide_yferr_hsc-wide_yflag_hsc-wide_yhsc-wide_flag_cleanedhsc-wide_flag_gaiahsc_flag_mergedhsc-deep_idm_ap_hsc-deep_gmerr_ap_hsc-deep_gm_hsc-deep_gmerr_hsc-deep_gm_ap_hsc-deep_rmerr_ap_hsc-deep_rm_hsc-deep_rmerr_hsc-deep_rm_ap_hsc-deep_imerr_ap_hsc-deep_im_hsc-deep_imerr_hsc-deep_im_ap_hsc-deep_zmerr_ap_hsc-deep_zm_hsc-deep_zmerr_hsc-deep_zm_ap_hsc-deep_ymerr_ap_hsc-deep_ym_hsc-deep_ymerr_hsc-deep_yhsc-deep_stellarityf_ap_hsc-deep_gferr_ap_hsc-deep_gf_hsc-deep_gferr_hsc-deep_gflag_hsc-deep_gf_ap_hsc-deep_rferr_ap_hsc-deep_rf_hsc-deep_rferr_hsc-deep_rflag_hsc-deep_rf_ap_hsc-deep_iferr_ap_hsc-deep_if_hsc-deep_iferr_hsc-deep_iflag_hsc-deep_if_ap_hsc-deep_zferr_ap_hsc-deep_zf_hsc-deep_zferr_hsc-deep_zflag_hsc-deep_zf_ap_hsc-deep_yferr_ap_hsc-deep_yf_hsc-deep_yferr_hsc-deep_yflag_hsc-deep_yhsc-deep_flag_cleanedhsc-deep_flag_gaiahsc-udeep_idm_ap_hsc-udeep_gmerr_ap_hsc-udeep_gm_hsc-udeep_gmerr_hsc-udeep_gm_ap_hsc-udeep_rmerr_ap_hsc-udeep_rm_hsc-udeep_rmerr_hsc-udeep_rm_ap_hsc-udeep_imerr_ap_hsc-udeep_im_hsc-udeep_imerr_hsc-udeep_im_ap_hsc-udeep_zmerr_ap_hsc-udeep_zm_hsc-udeep_zmerr_hsc-udeep_zm_ap_hsc-udeep_ymerr_ap_hsc-udeep_ym_hsc-udeep_ymerr_hsc-udeep_ym_ap_hsc-udeep_n921merr_ap_hsc-udeep_n921m_hsc-udeep_n921merr_hsc-udeep_n921m_ap_hsc-udeep_n816merr_ap_hsc-udeep_n816m_hsc-udeep_n816merr_hsc-udeep_n816hsc-udeep_stellarityf_ap_hsc-udeep_gferr_ap_hsc-udeep_gf_hsc-udeep_gferr_hsc-udeep_gflag_hsc-udeep_gf_ap_hsc-udeep_rferr_ap_hsc-udeep_rf_hsc-udeep_rferr_hsc-udeep_rflag_hsc-udeep_rf_ap_hsc-udeep_iferr_ap_hsc-udeep_if_hsc-udeep_iferr_hsc-udeep_iflag_hsc-udeep_if_ap_hsc-udeep_zferr_ap_hsc-udeep_zf_hsc-udeep_zferr_hsc-udeep_zflag_hsc-udeep_zf_ap_hsc-udeep_yferr_ap_hsc-udeep_yf_hsc-udeep_yferr_hsc-udeep_yflag_hsc-udeep_yf_ap_hsc-udeep_n921ferr_ap_hsc-udeep_n921f_hsc-udeep_n921ferr_hsc-udeep_n921flag_hsc-udeep_n921f_ap_hsc-udeep_n816ferr_ap_hsc-udeep_n816f_hsc-udeep_n816ferr_hsc-udeep_n816flag_hsc-udeep_n816hsc-udeep_flag_cleanedhsc-udeep_flag_gaia
degdeg
03749006085720055934.9726111128-5.416603968618.19542312620.00034829817013816.94024276730.00023904538829817.30807113650.00024776230566216.07739257810.00017302628839416.86113357540.00014561988064115.63289356230.00010984019900216.56562423710.00019991846056715.34885597230.00017121617565916.37762832640.00027522104210215.15138721470.000284483452560.0191.3509216310.0613843128085607.9987182620.133862435818False433.2827758790.09887406229971345.993286130.214501649141False653.9529418950.08770873397592026.946777340.205059230328False858.5194702150.1580806523562633.039306640.415219575167False1020.818603520.258765190843158.238769530.827518343925FalseFalse3False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
13854929857664454334.3202154982-4.1304148703218.04457473750.00041723984759316.87487792970.00028112891595817.16765975950.00031998904887616.0275573730.0002240876638116.69177627560.00015150020772115.57211112980.00010782140452616.40353012080.0001813991111715.28750705720.00015842526045216.18896102910.00023161989520315.08132934570.0002467407321090.0219.8720397950.0844950899482645.726440430.167197495699False493.1010742190.1453271508221409.213500980.290850907564False764.3448486330.1066542714832143.656982420.212880536914False996.7536621090.1665323674682786.102539060.406534284353False1214.550048830.2590997517113368.745605470.765569746494FalseFalse0False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
23748526767369725733.974499974-4.7282017702618.18273544310.0003648322017417.16830444340.00026594739756517.26713180540.00025697343517116.29336547850.00019506060925816.80125045780.00015856981917815.82149696350.00012383848661616.48783493040.00017849053256215.53880882260.0001628144673316.27545738220.00024152752303115.31787109380.0002574611862660.0193.6001892090.0650540962815492.8082275390.120711706579False449.9323425290.1064905673271103.198242190.198197796941False691.0344848630.100924335421703.730834960.194326624274False922.2866210940.1516201049092210.427246090.331470519304False1121.545288090.2494934350252709.263916020.642449140549FalseFalse0False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
33642919105018226736.4515092143-6.0249307572718.11347198490.00034677446819816.62465667720.00021609895338817.19094467160.0002174251276315.79340171810.00014305367949416.83705139160.00016399385640415.40161418910.00011350182467116.54805755620.00020610025967515.13417530060.00017628872592516.39900588990.00028585197287614.92207145690.0002701056073420.0206.3530883790.0659073367715813.0873413090.161832422018False482.6384277340.0966512113811748.393066410.230363547802False668.6199951170.1009909808642508.154052730.262200057507False872.5228881840.1656269729143208.704833980.520990729332False1000.915527340.2635204195983900.958007810.970466554165FalseFalse3False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
43855878186444189136.4573989967-4.0068759216118.10585784910.00028424902120616.59295272830.0001682490110417.31001663210.00024644646327915.88395309450.00016496641910616.93716812130.00016455442528215.51981639860.00010725444735716.64084625240.00020973254868315.27674770360.00018768533482216.35415267940.00025739660486615.08200073240.000286054186290.0207.8053588870.0544040724635837.17968750.129731923342False432.5071105960.09817287325861608.490478520.244393527508False609.7230834960.09240975975992249.433593750.222210302949False801.0530395510.1547400653362813.848876950.486414819956False1043.130615230.2472960650923366.661865230.8869997859FalseFalse0False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
53748071930333485832.7099242551-5.1677932464218.59483718870.0004656337259816.80094909670.00026469727163217.51274871830.00028620605007715.91829395290.00018528405053116.97933387760.00016503925144215.45567131040.00013015362492316.61885643010.0002294846781315.14287662510.00020064775890216.3959808350.00028968509286614.90541648860.0002892105258070.0132.4539947510.0568048134446691.2260742190.16851760447False358.8396301270.0945921018721558.411865230.265947520733False586.4975585940.08915159851312386.334472660.286064058542False817.4425659180.1727772802113183.091308590.588246166706False1003.708129880.2677991986273961.258056641.0551712513FalseFalse3False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
63748952398628889635.7589699154-4.8966403075318.22815704350.00031437847064817.57477569580.00025995945907217.4384193420.00023497418442316.79898452760.00019601749954716.99864578250.00016819803568116.34753417970.00014441835810416.75257492070.00023973807401516.10522460940.00024204824876516.51024055480.00028842029860215.92663955690.0003588413819670.0185.6679992680.0537607781589338.91406250.081146709621False384.2661743160.0831625834107692.4779052730.125019133091False576.1578369140.08925613015891049.508789060.139599591494False722.7197875980.1595815122131311.927734380.29247418046False903.4487915040.239996582271546.47863770.511119067669FalseFalse3False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
73748909878452921236.2035776729-5.3738760654618.30027008060.00037252041511217.01689147950.00025120508507817.34489440920.00024646506062716.15534973140.00016793567920116.89227104190.00017128323088415.70420360570.00012082856119416.56440353390.00021951162489115.41570758820.00019026859081416.34288787840.00026505911955615.21074867250.0002872420300260.0173.7367858890.0596097819507566.556457520.131083279848False418.8342285160.09507650882011252.736938480.19376643002False635.464843750.100249469281898.09704590.2112339288False859.4852294920.1737687289712475.807128910.433870017529False1054.010131840.2573138773442990.200927730.791086614132FalseFalse3False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
83854901940376923234.7406805615-4.3231889796118.1618957520.00034403227618916.78841400150.00021000757988117.28404617310.00022956542670716.03664016720.00015946262283316.87563133240.00017269117233815.63409233090.00011610258661716.59142684940.00021842322894415.41103553770.00018924810865416.37438774110.00026879587676415.19425392150.00029052796890.0197.3520202640.0625340342522699.2529296880.135252386332False442.9772033690.09366202354431397.474243160.205247744918False645.2785644530.1026344224812024.710205080.216511234641False838.3569946290.1686566621072486.48315430.433403849602False1023.870056150.2534796595573035.976318360.812385201454FalseFalse3False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
93748044442542614933.0207055779-5.2092502544618.59989166260.00056857720483116.72332000730.00032825148082317.48013687130.00032055596238915.76178169250.00020425043476316.9329700470.00017299744649815.19781875610.00012577026791416.5071945190.00021747712162314.86883926390.00018216611351816.22264671330.00026434729807114.63874244690.0002660623576960.0131.8388061520.0690412148833742.4577636720.22446782887False369.7813415530.1091753318911800.060791020.338630318642False612.0850830080.09752751886843026.024169920.350530713797False905.9872436520.1814727187164096.983398440.687396764755False1177.44653320.2866762876515064.106445311.24097192287FalseFalse0False-1nannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0-1nannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalsenannannannanFalseFalse0
\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "master_catalogue[:10].show_in_notebook()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue.add_column(Column(data=(np.char.array(master_catalogue['hsc-wide_id'].astype(str)) \n", " + np.char.array(master_catalogue['hsc-deep_id'].astype(str) )\n", " + np.char.array(master_catalogue['hsc-udeep_id'].astype(str))), \n", " name=\"hsc_intid\"))" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['hsc-wide_id', 'hsc-deep_id', 'hsc-udeep_id', 'hsc_intid']\n" ] } ], "source": [ "id_names = []\n", "for col in master_catalogue.colnames:\n", " if '_id' in col:\n", " id_names += [col]\n", " if '_intid' in col:\n", " id_names += [col]\n", " \n", "print(id_names)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## VII - Choosing between multiple values for the same filter\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### VII. e HSC wide, deep and udeep\n", "Here we straightforwardly take the deepest\n", "\n", "| Survey | Bands observed |\n", "|-------------|------------------|\n", "| HSC-WIDE | grizy |\n", "| HSC-DEEP | grizy |\n", "| HSC-UDEEP | grizy n921 n816 |" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": true }, "outputs": [], "source": [ "suprime_origin = Table()\n", "suprime_origin.add_column(master_catalogue['hsc_intid'])" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": true }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/opt/anaconda3/envs/herschelhelp_internal/lib/python3.6/site-packages/numpy/core/numeric.py:301: FutureWarning: in the future, full(5, 0) will return an array of dtype('int64')\n", " format(shape, fill_value, array(fill_value).dtype), FutureWarning)\n" ] } ], "source": [ "suprime_stats = Table()\n", "suprime_stats.add_column(Column(data=['g','r','i','z','y'], name=\"Band\"))\n", "for col in [\"HSC-UDEEP\", \"HSC-DEEP\", \"HSC-WIDE\"]:\n", " suprime_stats.add_column(Column(data=np.full(5, 0), name=\"{}\".format(col)))\n", " suprime_stats.add_column(Column(data=np.full(5, 0), name=\"use {}\".format(col)))\n", " suprime_stats.add_column(Column(data=np.full(5, 0), name=\"{} ap\".format(col)))\n", " suprime_stats.add_column(Column(data=np.full(5, 0), name=\"use {} ap\".format(col)))\n", " \n", "#n921 and n816 only in udeep so we can just rename those columns\n", "for col in master_catalogue.colnames:\n", " if ('n921' in col) or ('n816' in col):\n", " master_catalogue[col].name = col.replace('hsc-udeep', 'suprime')" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": true }, "outputs": [], "source": [ "suprime_bands = ['g','r','i','z','y'] # Lowercase naming convention (k is Ks)\n", "for band in suprime_bands:\n", "\n", " # Suprime total flux \n", " has_hsc_udeep = ~np.isnan(master_catalogue['f_hsc-udeep_' + band])\n", " has_hsc_deep = ~np.isnan(master_catalogue['f_hsc-deep_' + band])\n", " has_hsc_wide = ~np.isnan(master_catalogue['f_hsc-wide_' + band])\n", " \n", "\n", " use_hsc_udeep = has_hsc_udeep\n", " use_hsc_deep = has_hsc_deep & ~has_hsc_udeep\n", " use_hsc_wide = has_hsc_wide & ~has_hsc_deep & ~has_hsc_udeep\n", "\n", " f_suprime = np.full(len(master_catalogue), np.nan)\n", " f_suprime[use_hsc_udeep] = master_catalogue['f_hsc-udeep_' + band][use_hsc_udeep]\n", " f_suprime[use_hsc_deep] = master_catalogue['f_hsc-deep_' + band][use_hsc_deep]\n", " f_suprime[use_hsc_wide] = master_catalogue['f_hsc-wide_' + band][use_hsc_wide]\n", "\n", " ferr_suprime = np.full(len(master_catalogue), np.nan)\n", " ferr_suprime[use_hsc_udeep] = master_catalogue['ferr_hsc-udeep_' + band][use_hsc_udeep]\n", " ferr_suprime[use_hsc_deep] = master_catalogue['ferr_hsc-deep_' + band][use_hsc_deep]\n", " ferr_suprime[use_hsc_wide] = master_catalogue['ferr_hsc-wide_' + band][use_hsc_wide]\n", " \n", " m_suprime = np.full(len(master_catalogue), np.nan)\n", " m_suprime[use_hsc_udeep] = master_catalogue['m_hsc-udeep_' + band][use_hsc_udeep]\n", " m_suprime[use_hsc_deep] = master_catalogue['m_hsc-deep_' + band][use_hsc_deep]\n", " m_suprime[use_hsc_wide] = master_catalogue['m_hsc-wide_' + band][use_hsc_wide]\n", "\n", " merr_suprime = np.full(len(master_catalogue), np.nan)\n", " merr_suprime[use_hsc_udeep] = master_catalogue['merr_hsc-udeep_' + band][use_hsc_udeep]\n", " merr_suprime[use_hsc_deep] = master_catalogue['merr_hsc-deep_' + band][use_hsc_deep]\n", " merr_suprime[use_hsc_wide] = master_catalogue['merr_hsc-wide_' + band][use_hsc_wide]\n", "\n", " flag_suprime = np.full(len(master_catalogue), False, dtype=bool)\n", " flag_suprime[use_hsc_udeep] = master_catalogue['flag_hsc-udeep_' + band][use_hsc_udeep]\n", " flag_suprime[use_hsc_deep] = master_catalogue['flag_hsc-deep_' + band][use_hsc_deep]\n", " flag_suprime[use_hsc_wide] = master_catalogue['flag_hsc-wide_' + band][use_hsc_wide]\n", "\n", " master_catalogue.add_column(Column(data=f_suprime, name=\"f_suprime_\" + band))\n", " master_catalogue.add_column(Column(data=ferr_suprime, name=\"ferr_suprime_\" + band))\n", " master_catalogue.add_column(Column(data=m_suprime, name=\"m_suprime_\" + band))\n", " master_catalogue.add_column(Column(data=merr_suprime, name=\"merr_suprime_\" + band))\n", " master_catalogue.add_column(Column(data=flag_suprime, name=\"flag_suprime_\" + band))\n", "\n", " old_hsc_udeep_columns = ['f_hsc-udeep_' + band,\n", " 'ferr_hsc-udeep_' + band,\n", " 'm_hsc-udeep_' + band, \n", " 'merr_hsc-udeep_' + band,\n", " 'flag_hsc-udeep_' + band]\n", " old_hsc_deep_columns = ['f_hsc-deep_' + band,\n", " 'ferr_hsc-deep_' + band,\n", " 'm_hsc-deep_' + band, \n", " 'merr_hsc-deep_' + band,\n", " 'flag_hsc-deep_' + band]\n", " old_hsc_wide_columns = ['f_hsc-wide_' + band,\n", " 'ferr_hsc-wide_' + band,\n", " 'm_hsc-wide_' + band, \n", " 'merr_hsc-wide_' + band,\n", " 'flag_hsc-wide_' + band]\n", " \n", " old_columns = old_hsc_udeep_columns + old_hsc_deep_columns + old_hsc_wide_columns\n", " master_catalogue.remove_columns(old_columns)\n", "\n", " origin = np.full(len(master_catalogue), ' ', dtype='\n", "idxBandHSC-UDEEPuse HSC-UDEEPHSC-UDEEP apuse HSC-UDEEP apHSC-DEEPuse HSC-DEEPHSC-DEEP apuse HSC-DEEP apHSC-WIDEuse HSC-WIDEHSC-WIDE apuse HSC-WIDE ap\n", "0g998673.0998673.01095018.01095018.01919139.01772037.02174733.02000686.03829925.01960251.04307858.02092471.0\n", "1r1000644.01000644.01108590.01108590.01917464.01773982.02205170.02032086.03818027.01965600.04341941.02102626.0\n", "2i1005311.01005311.01121186.01121186.01882446.01738286.02147614.01973255.03878046.02016292.04412774.02162473.0\n", "3z951892.0951892.01080498.01080498.01755293.01629563.02007279.01854794.03684114.01956526.04278480.02140701.0\n", "4y894655.0894655.01022098.01022098.01613267.01491772.01889370.01734977.03353727.01840796.03929006.02011078.0\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "suprime_stats.show_in_notebook()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": true }, "outputs": [], "source": [ "suprime_origin.write(\"{}/xmm-lss_hsc_fluxes_origins{}.fits\".format(OUT_DIR, SUFFIX), overwrite=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## XI - Saving the catalogue" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": true }, "outputs": [], "source": [ "columns = [\"help_id\", \"field\", \"ra\", \"dec\", \"hp_idx\"]\n", "\n", "bands = [column[5:] for column in master_catalogue.colnames if 'f_ap' in column]\n", "for band in bands:\n", " columns += [\"f_ap_{}\".format(band), \"ferr_ap_{}\".format(band),\n", " \"m_ap_{}\".format(band), \"merr_ap_{}\".format(band),\n", " \"f_{}\".format(band), \"ferr_{}\".format(band),\n", " \"m_{}\".format(band), \"merr_{}\".format(band),\n", " \"flag_{}\".format(band)] \n", " \n", "columns += [\"stellarity\", \"stellarity_origin\", \"flag_cleaned\", \n", " \"flag_merged\", \"flag_gaia\", \"flag_optnir_obs\", \"flag_optnir_det\", \n", " \"zspec\", \"zspec_qual\", \"zspec_association_flag\", \"ebv\"]" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Missing columns: {'hsc-wide_flag_cleaned', 'hsc-udeep_flag_cleaned', 'hsc-udeep_flag_gaia', 'hsc-wide_id', 'hsc_intid', 'hsc-deep_stellarity', 'hsc-deep_flag_gaia', 'hsc_dec', 'hsc_flag_merged', 'hsc-wide_stellarity', 'hsc-wide_flag_gaia', 'hsc-udeep_id', 'hsc-deep_id', 'hsc_ra', 'hsc-udeep_stellarity', 'hsc-deep_flag_cleaned'}\n" ] } ], "source": [ "# We check for columns in the master catalogue that we will not save to disk.\n", "print(\"Missing columns: {}\".format(set(master_catalogue.colnames) - set(columns)))" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue.write(\"{}/hsc_merged_catalogue_xmm-lss.fits\".format(TMP_DIR), overwrite=True)" ] } ], "metadata": { "kernelspec": { "display_name": "Python (herschelhelp_internal)", "language": "python", "name": "helpint" }, "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.6.1" } }, "nbformat": 4, "nbformat_minor": 2 }