{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Use DESI Legacy Survey photo z\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/rs548/anaconda/envs/herschelhelp_internal/lib/python3.6/site-packages/seaborn/apionly.py:9: UserWarning: As seaborn no longer sets a default style on import, the seaborn.apionly module is deprecated. It will be removed in a future version.\n",
      "  warnings.warn(msg, UserWarning)\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "from astropy.table import Table, Column, vstack\n",
    "from astropy.cosmology import Planck15\n",
    "import astropy.units as u\n",
    "from astropy.coordinates import SkyCoord\n",
    "from astropy.io import ascii\n",
    "\n",
    "import urllib.request, json \n",
    "\n",
    "import time\n",
    "import numpy as np\n",
    "import pyvo as vo\n",
    "%matplotlib inline\n",
    "#%config InlineBackend.figure_format = 'svg'\n",
    "import matplotlib as mpl\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "from selenium import webdriver\n",
    "\n",
    "from herschelhelp_internal.masterlist import merge_catalogues, nb_merge_dist_plot\n",
    "from herschelhelp.utils import clean_table"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2. Cross match to desi-photoz objects"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "cross_query = \"\"\"\n",
    "SELECT\n",
    "    db.ID,\n",
    "    db.RA,\n",
    "    db.DEC,\n",
    "    db.field,\n",
    "    db.photo_z,\n",
    "    db.photo_zerr\n",
    "FROM desi_photoz.main AS db\n",
    "WHERE db.field = 'ELAIS-N2'\n",
    "\"\"\"\n",
    "\n",
    "# construct a service; I’ve taken the URL from TOPCAT’s\n",
    "# TAP service browser # (\"Selected TAP Service\" near the\n",
    "# foot of the dialog)\n",
    "service = vo.dal.TAPService(\n",
    "    \"https://herschel-vos.phys.sussex.ac.uk/__system__/tap/run/tap\"\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Job COMPLETED running after 6 seconds.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "WARNING: W27: None:3:464: W27: COOSYS deprecated in VOTable 1.2 [astropy.io.votable.tree]\n",
      "WARNING:astropy:W27: None:3:464: W27: COOSYS deprecated in VOTable 1.2\n"
     ]
    }
   ],
   "source": [
    "job = service.submit_job(cross_query)\n",
    "job.run()\n",
    "job_url = job.url\n",
    "job_result = vo.dal.tap.AsyncTAPJob(job_url)\n",
    "start_time = time.time()\n",
    "wait = 5.\n",
    "while job.phase == 'EXECUTING':\n",
    "    \n",
    "    time.sleep(wait) #wait and try again\n",
    "    #wait *= 2\n",
    "\n",
    "print('Job {} running after {} seconds.'.format(job.phase, round(time.time() - start_time)))\n",
    "\n",
    "result = job_result.fetch_result()\n",
    "desi_photoz = result.table"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Converting column id type from object to string\n",
      "Converting column field type from object to string\n"
     ]
    }
   ],
   "source": [
    "desi_photoz = clean_table(desi_photoz)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "desi_photoz.write('./data/ELAIS-N2_DESI-DR7_Zou_et_al_2019_photo_z.fits', overwrite=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<i>Table length=125078</i>\n",
       "<table id=\"table112186903912\" class=\"table-striped table-bordered table-condensed\">\n",
       "<thead><tr><th>id</th><th>ra</th><th>dec</th><th>field</th><th>photo_z</th><th>photo_zerr</th></tr></thead>\n",
       "<thead><tr><th></th><th>deg</th><th>deg</th><th></th><th></th><th></th></tr></thead>\n",
       "<thead><tr><th>str16</th><th>float64</th><th>float64</th><th>str8</th><th>float64</th><th>float64</th></tr></thead>\n",
       "<tr><td>6000540419000164</td><td>248.460637433799</td><td>39.1350575305683</td><td>ELAIS-N2</td><td>0.98934674</td><td>0.13755938</td></tr>\n",
       "<tr><td>6000540419000180</td><td>248.471694827999</td><td>39.1354111112192</td><td>ELAIS-N2</td><td>0.8009497</td><td>0.11433895</td></tr>\n",
       "<tr><td>6000540419000190</td><td>248.482067747255</td><td>39.1364569173332</td><td>ELAIS-N2</td><td>0.6310594</td><td>0.124429666</td></tr>\n",
       "<tr><td>6000540419000262</td><td>248.471031359613</td><td>39.1418683077377</td><td>ELAIS-N2</td><td>0.8405157</td><td>0.08245572</td></tr>\n",
       "<tr><td>6000540419000316</td><td>248.481635769193</td><td>39.1452960982153</td><td>ELAIS-N2</td><td>0.6558363</td><td>0.045578916</td></tr>\n",
       "<tr><td>6000540419000289</td><td>248.488362426785</td><td>39.1434293452125</td><td>ELAIS-N2</td><td>0.61417955</td><td>0.056229208</td></tr>\n",
       "<tr><td>6000540417003920</td><td>247.887547335565</td><td>39.3617392570609</td><td>ELAIS-N2</td><td>0.6248008</td><td>0.19731209</td></tr>\n",
       "<tr><td>6000540417003980</td><td>247.888359739997</td><td>39.3649926116678</td><td>ELAIS-N2</td><td>0.9573758</td><td>0.19850549</td></tr>\n",
       "<tr><td>6000540417004058</td><td>247.875120798947</td><td>39.3707868025316</td><td>ELAIS-N2</td><td>0.38345268</td><td>0.07563685</td></tr>\n",
       "<tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
       "<tr><td>6000556727000968</td><td>249.932911846751</td><td>42.9413012742521</td><td>ELAIS-N2</td><td>0.22136216</td><td>0.010950682</td></tr>\n",
       "<tr><td>6000556727001080</td><td>249.946287681333</td><td>42.9404336865276</td><td>ELAIS-N2</td><td>0.26044056</td><td>0.08341255</td></tr>\n",
       "<tr><td>6000556727001103</td><td>249.951852714063</td><td>42.9424994860862</td><td>ELAIS-N2</td><td>0.6247358</td><td>0.15093371</td></tr>\n",
       "<tr><td>6000556727001112</td><td>249.965672641881</td><td>42.943501776756</td><td>ELAIS-N2</td><td>0.7633933</td><td>0.09245099</td></tr>\n",
       "<tr><td>6000556727001074</td><td>249.99021159796</td><td>42.9394421049434</td><td>ELAIS-N2</td><td>0.5123748</td><td>0.109491944</td></tr>\n",
       "<tr><td>6000556727000377</td><td>250.035739496096</td><td>42.8938740250933</td><td>ELAIS-N2</td><td>0.74264354</td><td>0.0926744</td></tr>\n",
       "<tr><td>6000556727000707</td><td>250.035143057258</td><td>42.9137198410278</td><td>ELAIS-N2</td><td>0.79612315</td><td>0.10003017</td></tr>\n",
       "<tr><td>6000555671003967</td><td>250.461426503582</td><td>42.8533806396477</td><td>ELAIS-N2</td><td>0.51138264</td><td>0.16923682</td></tr>\n",
       "<tr><td>6000555671003966</td><td>250.462721878105</td><td>42.8543572253311</td><td>ELAIS-N2</td><td>0.48838198</td><td>0.09797251</td></tr>\n",
       "<tr><td>6000555671004001</td><td>250.458205259563</td><td>42.8555889271681</td><td>ELAIS-N2</td><td>0.81821734</td><td>0.11870456</td></tr>\n",
       "</table>"
      ],
      "text/plain": [
       "<Table length=125078>\n",
       "       id               ra              dec        ...  photo_z    photo_zerr\n",
       "                       deg              deg        ...                       \n",
       "     str16           float64          float64      ...  float64     float64  \n",
       "---------------- ---------------- ---------------- ... ---------- -----------\n",
       "6000540419000164 248.460637433799 39.1350575305683 ... 0.98934674  0.13755938\n",
       "6000540419000180 248.471694827999 39.1354111112192 ...  0.8009497  0.11433895\n",
       "6000540419000190 248.482067747255 39.1364569173332 ...  0.6310594 0.124429666\n",
       "6000540419000262 248.471031359613 39.1418683077377 ...  0.8405157  0.08245572\n",
       "6000540419000316 248.481635769193 39.1452960982153 ...  0.6558363 0.045578916\n",
       "6000540419000289 248.488362426785 39.1434293452125 ... 0.61417955 0.056229208\n",
       "6000540417003920 247.887547335565 39.3617392570609 ...  0.6248008  0.19731209\n",
       "6000540417003980 247.888359739997 39.3649926116678 ...  0.9573758  0.19850549\n",
       "6000540417004058 247.875120798947 39.3707868025316 ... 0.38345268  0.07563685\n",
       "             ...              ...              ... ...        ...         ...\n",
       "6000556727000968 249.932911846751 42.9413012742521 ... 0.22136216 0.010950682\n",
       "6000556727001080 249.946287681333 42.9404336865276 ... 0.26044056  0.08341255\n",
       "6000556727001103 249.951852714063 42.9424994860862 ...  0.6247358  0.15093371\n",
       "6000556727001112 249.965672641881  42.943501776756 ...  0.7633933  0.09245099\n",
       "6000556727001074  249.99021159796 42.9394421049434 ...  0.5123748 0.109491944\n",
       "6000556727000377 250.035739496096 42.8938740250933 ... 0.74264354   0.0926744\n",
       "6000556727000707 250.035143057258 42.9137198410278 ... 0.79612315  0.10003017\n",
       "6000555671003967 250.461426503582 42.8533806396477 ... 0.51138264  0.16923682\n",
       "6000555671003966 250.462721878105 42.8543572253311 ... 0.48838198  0.09797251\n",
       "6000555671004001 250.458205259563 42.8555889271681 ... 0.81821734  0.11870456"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "desi_photoz"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "ml = Table.read('../../dmu1/dmu1_ml_ELAIS-N2/data/master_catalogue_elais-n2_20180218.fits')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<i>Table length=1783240</i>\n",
       "<table id=\"table112328572600\" class=\"table-striped table-bordered table-condensed\">\n",
       "<thead><tr><th>help_id</th><th>ra</th><th>dec</th></tr></thead>\n",
       "<thead><tr><th></th><th>deg</th><th>deg</th></tr></thead>\n",
       "<thead><tr><th>bytes27</th><th>float64</th><th>float64</th></tr></thead>\n",
       "<tr><td>HELP_J164318.825+404445.546</td><td>250.828437443607</td><td>40.745984910265705</td></tr>\n",
       "<tr><td>HELP_J164244.476+405313.590</td><td>250.685316090607</td><td>40.887108455265704</td></tr>\n",
       "<tr><td>HELP_J164348.377+404930.460</td><td>250.951571928607</td><td>40.82512769126569</td></tr>\n",
       "<tr><td>HELP_J162907.731+413754.129</td><td>247.282214558607</td><td>41.63170241126569</td></tr>\n",
       "<tr><td>HELP_J162947.447+412132.739</td><td>247.447694342607</td><td>41.3590941922657</td></tr>\n",
       "<tr><td>HELP_J162922.794+414147.104</td><td>247.34497517760698</td><td>41.6964178102657</td></tr>\n",
       "<tr><td>HELP_J163057.320+415251.919</td><td>247.738832915607</td><td>41.88108874726569</td></tr>\n",
       "<tr><td>HELP_J163013.584+414743.101</td><td>247.556598389607</td><td>41.79530593626569</td></tr>\n",
       "<tr><td>HELP_J163017.256+412737.132</td><td>247.571898412607</td><td>41.4603143532657</td></tr>\n",
       "<tr><td>...</td><td>...</td><td>...</td></tr>\n",
       "<tr><td>HELP_J164127.507+420135.582</td><td>250.364610801516</td><td>42.026550535549</td></tr>\n",
       "<tr><td>HELP_J163804.973+421140.850</td><td>249.52072080151598</td><td>42.194680535549</td></tr>\n",
       "<tr><td>HELP_J164042.087+420842.794</td><td>250.17536080151598</td><td>42.145220535548994</td></tr>\n",
       "<tr><td>HELP_J163057.068+403734.934</td><td>247.73778180151598</td><td>40.626370535549</td></tr>\n",
       "<tr><td>HELP_J162922.628+410610.874</td><td>247.344281801516</td><td>41.103020535549</td></tr>\n",
       "<tr><td>HELP_J162925.736+410512.050</td><td>247.35723180151598</td><td>41.086680535549</td></tr>\n",
       "<tr><td>HELP_J163130.207+412330.914</td><td>247.87586080151598</td><td>41.391920535549</td></tr>\n",
       "<tr><td>HELP_J163424.775+414639.110</td><td>248.603230801516</td><td>41.777530535549</td></tr>\n",
       "<tr><td>HELP_J163109.615+403404.694</td><td>247.790061801516</td><td>40.567970535548994</td></tr>\n",
       "<tr><td>HELP_J164213.543+414729.582</td><td>250.556430801516</td><td>41.791550535549</td></tr>\n",
       "</table>"
      ],
      "text/plain": [
       "<Table length=1783240>\n",
       "          help_id                   ra                dec        \n",
       "                                   deg                deg        \n",
       "          bytes27                float64            float64      \n",
       "--------------------------- ------------------ ------------------\n",
       "HELP_J164318.825+404445.546   250.828437443607 40.745984910265705\n",
       "HELP_J164244.476+405313.590   250.685316090607 40.887108455265704\n",
       "HELP_J164348.377+404930.460   250.951571928607  40.82512769126569\n",
       "HELP_J162907.731+413754.129   247.282214558607  41.63170241126569\n",
       "HELP_J162947.447+412132.739   247.447694342607   41.3590941922657\n",
       "HELP_J162922.794+414147.104 247.34497517760698   41.6964178102657\n",
       "HELP_J163057.320+415251.919   247.738832915607  41.88108874726569\n",
       "HELP_J163013.584+414743.101   247.556598389607  41.79530593626569\n",
       "HELP_J163017.256+412737.132   247.571898412607   41.4603143532657\n",
       "                        ...                ...                ...\n",
       "HELP_J164127.507+420135.582   250.364610801516    42.026550535549\n",
       "HELP_J163804.973+421140.850 249.52072080151598    42.194680535549\n",
       "HELP_J164042.087+420842.794 250.17536080151598 42.145220535548994\n",
       "HELP_J163057.068+403734.934 247.73778180151598    40.626370535549\n",
       "HELP_J162922.628+410610.874   247.344281801516    41.103020535549\n",
       "HELP_J162925.736+410512.050 247.35723180151598    41.086680535549\n",
       "HELP_J163130.207+412330.914 247.87586080151598    41.391920535549\n",
       "HELP_J163424.775+414639.110   248.603230801516    41.777530535549\n",
       "HELP_J163109.615+403404.694   247.790061801516 40.567970535548994\n",
       "HELP_J164213.543+414729.582   250.556430801516    41.791550535549"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ml"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/rs548/anaconda/envs/herschelhelp_internal/lib/python3.6/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
      "  return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x81a6475f8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "nb_merge_dist_plot(\n",
    "    SkyCoord(ml['ra'], ml['dec']),\n",
    "    SkyCoord(desi_photoz['ra'], desi_photoz['dec'])\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Given the graph above, we use 0.8 arc-second radius\n",
    "desi_photoz['ra'].name = 'desi_ra'\n",
    "desi_photoz['dec'].name = 'desi_dec'\n",
    "photoz = merge_catalogues(ml, desi_photoz, \"desi_ra\", \"desi_dec\", radius=0.8*u.arcsec)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "photoz['help_id'].fill_value = ''\n",
    "photoz['photo_z'].fill_value = np.nan\n",
    "photoz = photoz.filled()\n",
    "has_help = photoz['help_id'] != ''\n",
    "has_z = ~np.isnan(photoz['photo_z'])\n",
    "photoz = photoz['help_id', 'id', 'ra', 'dec', 'photo_z', 'photo_zerr']\n",
    "photoz.meta = None\n",
    "photoz[has_help & has_z].write('./data/ELAIS-N2_DESI-DR7_Zou_et_al_2019_photo_z_withhelp_id.fits', overwrite=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<i>Table length=120961</i>\n",
       "<table id=\"table4504333448\" class=\"table-striped table-bordered table-condensed\">\n",
       "<thead><tr><th>help_id</th><th>ra</th><th>dec</th><th>flag_merged</th><th>id</th><th>field</th><th>photo_z</th><th>photo_zerr</th></tr></thead>\n",
       "<thead><tr><th></th><th>deg</th><th>deg</th><th></th><th></th><th></th><th></th><th></th></tr></thead>\n",
       "<thead><tr><th>bytes27</th><th>float64</th><th>float64</th><th>bool</th><th>str16</th><th>str8</th><th>float64</th><th>float64</th></tr></thead>\n",
       "<tr><td>HELP_J162707.526+411737.244</td><td>246.78135688293202</td><td>41.2936790060348</td><td>False</td><td>6000549224003487</td><td>ELAIS-N2</td><td>0.5422797</td><td>0.028621506</td></tr>\n",
       "<tr><td>HELP_J163233.863+395528.994</td><td>248.141095613607</td><td>39.924720597265704</td><td>False</td><td>6000543752000765</td><td>ELAIS-N2</td><td>0.5974862</td><td>0.06635941</td></tr>\n",
       "<tr><td>HELP_J163128.893+412942.785</td><td>247.870388042607</td><td>41.495218039265694</td><td>False</td><td>6000550310002097</td><td>ELAIS-N2</td><td>0.51558125</td><td>0.13757469</td></tr>\n",
       "<tr><td>HELP_J162858.621+405542.190</td><td>247.244254095607</td><td>40.9283860032657</td><td>False</td><td>6000548138000869</td><td>ELAIS-N2</td><td>0.2186442</td><td>0.06370761</td></tr>\n",
       "<tr><td>HELP_J163434.937+402548.481</td><td>248.645570451607</td><td>40.4301337082657</td><td>False</td><td>6000545956000755</td><td>ELAIS-N2</td><td>0.14262727</td><td>0.009865502</td></tr>\n",
       "<tr><td>HELP_J162642.817+411630.254</td><td>246.678405162932</td><td>41.2750706660348</td><td>False</td><td>6000549224003014</td><td>ELAIS-N2</td><td>0.21139045</td><td>0.019573843</td></tr>\n",
       "<tr><td>HELP_J162847.734+403023.029</td><td>247.198893088607</td><td>40.5063968062657</td><td>False</td><td>6000545951001934</td><td>ELAIS-N2</td><td>0.21584016</td><td>0.052848402</td></tr>\n",
       "<tr><td>HELP_J162743.711+403257.718</td><td>246.932131022932</td><td>40.5493660060348</td><td>False</td><td>6000545951002612</td><td>ELAIS-N2</td><td>0.19590607</td><td>0.019225592</td></tr>\n",
       "<tr><td>HELP_J163419.378+415038.626</td><td>248.580740760607</td><td>41.84406286726569</td><td>False</td><td>6000551392003780</td><td>ELAIS-N2</td><td>0.23379058</td><td>0.02469711</td></tr>\n",
       "<tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
       "<tr><td>HELP_J164012.148+424859.279</td><td>250.05061731860698</td><td>42.81646634026569</td><td>False</td><td>6000555670003532</td><td>ELAIS-N2</td><td>0.20372915</td><td>0.07733338</td></tr>\n",
       "<tr><td>HELP_J163645.767+393355.327</td><td>249.190696118376</td><td>39.5653684946138</td><td>False</td><td>6000541537002847</td><td>ELAIS-N2</td><td>0.9775366</td><td>0.16285701</td></tr>\n",
       "<tr><td>HELP_J164246.823+422241.453</td><td>250.695097018376</td><td>42.3781813946138</td><td>False</td><td>6000554610000216</td><td>ELAIS-N2</td><td>0.8778632</td><td>0.097507894</td></tr>\n",
       "<tr><td>HELP_J164215.136+414026.393</td><td>250.563066264607</td><td>41.67399814326569</td><td>False</td><td>6000551398000900</td><td>ELAIS-N2</td><td>0.957171</td><td>0.11441935</td></tr>\n",
       "<tr><td>HELP_J162844.480+405521.378</td><td>247.185331319607</td><td>40.9226049602657</td><td>False</td><td>6000548138000781</td><td>ELAIS-N2</td><td>1.0708745</td><td>0.107518785</td></tr>\n",
       "<tr><td>HELP_J163715.718+414640.925</td><td>249.315492354607</td><td>41.778034697265696</td><td>False</td><td>6000551394002448</td><td>ELAIS-N2</td><td>0.65964115</td><td>0.1140362</td></tr>\n",
       "<tr><td>HELP_J163149.285+401011.835</td><td>247.955354518376</td><td>40.1699540946138</td><td>False</td><td>6000544855000707</td><td>ELAIS-N2</td><td>0.5200074</td><td>0.07698403</td></tr>\n",
       "<tr><td>HELP_J164106.055+421653.594</td><td>250.275227780607</td><td>42.2815537782657</td><td>False</td><td>6000553543002792</td><td>ELAIS-N2</td><td>0.8306763</td><td>0.07801085</td></tr>\n",
       "<tr><td>HELP_J164140.847+403438.259</td><td>250.420194001607</td><td>40.5772941352657</td><td>False</td><td>6000545961004122</td><td>ELAIS-N2</td><td>0.7589125</td><td>0.07402918</td></tr>\n",
       "<tr><td>HELP_J163730.691+422438.790</td><td>249.377880782607</td><td>42.410774864265704</td><td>False</td><td>6000554607000498</td><td>ELAIS-N2</td><td>0.5956203</td><td>0.07337316</td></tr>\n",
       "</table>"
      ],
      "text/plain": [
       "<Table length=120961>\n",
       "          help_id                   ra         ...  photo_z    photo_zerr\n",
       "                                   deg         ...                       \n",
       "          bytes27                float64       ...  float64     float64  \n",
       "--------------------------- ------------------ ... ---------- -----------\n",
       "HELP_J162707.526+411737.244 246.78135688293202 ...  0.5422797 0.028621506\n",
       "HELP_J163233.863+395528.994   248.141095613607 ...  0.5974862  0.06635941\n",
       "HELP_J163128.893+412942.785   247.870388042607 ... 0.51558125  0.13757469\n",
       "HELP_J162858.621+405542.190   247.244254095607 ...  0.2186442  0.06370761\n",
       "HELP_J163434.937+402548.481   248.645570451607 ... 0.14262727 0.009865502\n",
       "HELP_J162642.817+411630.254   246.678405162932 ... 0.21139045 0.019573843\n",
       "HELP_J162847.734+403023.029   247.198893088607 ... 0.21584016 0.052848402\n",
       "HELP_J162743.711+403257.718   246.932131022932 ... 0.19590607 0.019225592\n",
       "HELP_J163419.378+415038.626   248.580740760607 ... 0.23379058  0.02469711\n",
       "                        ...                ... ...        ...         ...\n",
       "HELP_J164012.148+424859.279 250.05061731860698 ... 0.20372915  0.07733338\n",
       "HELP_J163645.767+393355.327   249.190696118376 ...  0.9775366  0.16285701\n",
       "HELP_J164246.823+422241.453   250.695097018376 ...  0.8778632 0.097507894\n",
       "HELP_J164215.136+414026.393   250.563066264607 ...   0.957171  0.11441935\n",
       "HELP_J162844.480+405521.378   247.185331319607 ...  1.0708745 0.107518785\n",
       "HELP_J163715.718+414640.925   249.315492354607 ... 0.65964115   0.1140362\n",
       "HELP_J163149.285+401011.835   247.955354518376 ...  0.5200074  0.07698403\n",
       "HELP_J164106.055+421653.594   250.275227780607 ...  0.8306763  0.07801085\n",
       "HELP_J164140.847+403438.259   250.420194001607 ...  0.7589125  0.07402918\n",
       "HELP_J163730.691+422438.790   249.377880782607 ...  0.5956203  0.07337316"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "photoz[has_help & has_z]"
   ]
  }
 ],
 "metadata": {
  "anaconda-cloud": {},
  "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.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
