From a0d86b8b0ffbf7e649e69e069c733d4033d30766 Mon Sep 17 00:00:00 2001 From: Katherine Eaton Date: Mon, 16 Aug 2021 19:46:43 -0400 Subject: [PATCH] update scripts and notebook --- workflow/notebooks/auspice.py.ipynb | 1098 ++++++++++++++++++--------- workflow/notebooks/host.py.ipynb | 27 +- workflow/scripts/project_unload.sh | 2 +- 3 files changed, 748 insertions(+), 379 deletions(-) diff --git a/workflow/notebooks/auspice.py.ipynb b/workflow/notebooks/auspice.py.ipynb index 6b5ecf35..eb4c0a0f 100644 --- a/workflow/notebooks/auspice.py.ipynb +++ b/workflow/notebooks/auspice.py.ipynb @@ -1549,29 +1549,36 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 28, "id": "overall-amber", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "strain NA\n", - "date NA\n", - "date_bp NA\n", - "country NA\n", - "province NA\n", - " ... \n", - "mugration_province_lat_confidence 0.561953\n", - "mugration_province_lon_confidence 0.561953\n", - "mugration_continent_confidence 0.52\n", - "mugration_host_order_confidence 0.93\n", - "mugration_population_confidence 0.5\n", - "Name: NODE0, Length: 54, dtype: object" + "strain NA\n", + "date NA\n", + "date_bp NA\n", + "country NA\n", + "province NA\n", + " ... \n", + "timetree_date_calendar -3257\n", + "timetree_CI_lower_err 187\n", + "timetree_CI_upper_err 194\n", + "country_date_strain NA\n", + "province_date_strain NA\n", + "Name: NODE0, Length: 74, dtype: object" ] }, "metadata": {}, "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.85\n" + ] } ], "source": [ @@ -1586,15 +1593,17 @@ " max_val = val\n", " max_state = state\n", " \n", - " metadata_df.at[sample,\"mugration_\" + attr] = max_state \n", - " metadata_df.at[sample,\"mugration_\" + attr + \"_confidence\"] = round(max_val,2)\n", + " metadata_df.at[sample,\"mugration_\" + attr] = max_state \n", + " metadata_df.at[sample,\"mugration_\" + attr + \"_confidence\"] = round(max_val, 2)\n", " \n", " #if the attr is country or province, extend this confidence to lat and lon\n", " if attr == \"country\" or attr == \"province\":\n", " metadata_df.at[sample,\"mugration_\" + attr + \"_lat_confidence\"] = max_val\n", " metadata_df.at[sample,\"mugration_\" + attr + \"_lon_confidence\"] = max_val\n", "\n", - "display(metadata_df.loc[\"NODE0\"])" + "display(metadata_df.loc[\"NODE0\"])\n", + "\n", + "print(metadata_df.loc[\"NODE0\"][\"mugration_country_confidence\"])" ] }, { @@ -1904,15 +1913,15 @@ " North America\n", " Human\n", " 1.ORI\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 39.783730\n", " -100.445882\n", " 38.725178\n", @@ -1969,15 +1978,15 @@ " Europe\n", " Human\n", " 2.MED\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 64.686314\n", " 97.745306\n", " 47.622245\n", @@ -2034,15 +2043,15 @@ " Asia\n", " Rodentia\n", " 0.ANT\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 35.000074\n", " 104.999927\n", " 42.480495\n", @@ -2099,15 +2108,15 @@ " Asia\n", " Siphonaptera\n", " 0.ANT\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 35.000074\n", " 104.999927\n", " 42.480495\n", @@ -2164,15 +2173,15 @@ " Asia\n", " Rodentia\n", " 0.ANT\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 35.000074\n", " 104.999927\n", " 42.480495\n", @@ -2294,15 +2303,15 @@ " South America\n", " Human\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.00\n", + " 99.0\n", " 0.999873\n", " 0.999873\n", - " 1.0\n", - " 0.55\n", - " 1.0\n", + " 99.0\n", + " 55.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -2359,15 +2368,15 @@ " South America\n", " Rodentia\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.00\n", + " 99.0\n", " 0.999998\n", " 0.999998\n", - " 1.0\n", - " 0.61\n", - " 1.0\n", + " 99.0\n", + " 60.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -2424,15 +2433,15 @@ " South America\n", " Rodentia\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.00\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.0\n", - " 0.56\n", - " 1.0\n", + " 99.0\n", + " 55.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -2489,15 +2498,15 @@ " South America\n", " Human\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.00\n", + " 99.0\n", " 0.999874\n", " 0.999874\n", - " 1.0\n", - " 0.60\n", - " 1.0\n", + " 99.0\n", + " 59.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -2554,15 +2563,15 @@ " South America\n", " Rodentia\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 0.99\n", + " 99.0\n", " 0.991635\n", " 0.991635\n", - " 1.0\n", - " 0.82\n", - " 1.0\n", + " 99.0\n", + " 82.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -2902,17 +2911,17 @@ "\n", " mugration_country_confidence \\\n", "sample \n", - "Reference 1.0 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.0 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.0 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.0 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.0 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 1.0 \n", - "NODE596 1.0 \n", - "NODE597 1.0 \n", - "NODE598 1.0 \n", - "NODE599 1.0 \n", + "NODE595 99.0 \n", + "NODE596 99.0 \n", + "NODE597 99.0 \n", + "NODE598 99.0 \n", + "NODE599 99.0 \n", "\n", " mugration_country_lat_confidence \\\n", "sample \n", @@ -2944,17 +2953,17 @@ "\n", " mugration_province_confidence \\\n", "sample \n", - "Reference 1.00 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.00 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.00 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.00 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.00 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 1.00 \n", - "NODE596 1.00 \n", - "NODE597 1.00 \n", - "NODE598 1.00 \n", - "NODE599 0.99 \n", + "NODE595 99.0 \n", + "NODE596 99.0 \n", + "NODE597 99.0 \n", + "NODE598 99.0 \n", + "NODE599 99.0 \n", "\n", " mugration_province_lat_confidence \\\n", "sample \n", @@ -2986,45 +2995,45 @@ "\n", " mugration_continent_confidence \\\n", "sample \n", - "Reference 1.0 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.0 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.0 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.0 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.0 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 1.0 \n", - "NODE596 1.0 \n", - "NODE597 1.0 \n", - "NODE598 1.0 \n", - "NODE599 1.0 \n", + "NODE595 99.0 \n", + "NODE596 99.0 \n", + "NODE597 99.0 \n", + "NODE598 99.0 \n", + "NODE599 99.0 \n", "\n", " mugration_host_order_confidence \\\n", "sample \n", - "Reference 1.00 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.00 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.00 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.00 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.00 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 0.55 \n", - "NODE596 0.61 \n", - "NODE597 0.56 \n", - "NODE598 0.60 \n", - "NODE599 0.82 \n", + "NODE595 55.0 \n", + "NODE596 60.0 \n", + "NODE597 55.0 \n", + "NODE598 59.0 \n", + "NODE599 82.0 \n", "\n", " mugration_population_confidence \\\n", "sample \n", - "Reference 1.0 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.0 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.0 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.0 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.0 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 1.0 \n", - "NODE596 1.0 \n", - "NODE597 1.0 \n", - "NODE598 1.0 \n", - "NODE599 1.0 \n", + "NODE595 99.0 \n", + "NODE596 99.0 \n", + "NODE597 99.0 \n", + "NODE598 99.0 \n", + "NODE599 99.0 \n", "\n", " mugration_country_lat \\\n", "sample \n", @@ -3155,7 +3164,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 16, "id": "passing-christopher", "metadata": {}, "outputs": [ @@ -3163,15 +3172,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "{'country': {'russia': '#8000ff', 'lithuania': '#7215ff', 'estonia': '#652afe', 'germany': '#573ffd', 'china': '#4a53fc', 'azerbaijan': '#3c66fa', 'armenia': '#2f79f7', 'georgia': '#228bf4', 'mongolia': '#149df1', 'tajikistan': '#07adee', 'kyrgyzstan': '#07bcea', 'england': '#14c9e5', 'spain': '#22d5e0', 'france': '#2fe0db', 'nepal': '#3cead5', 'india': '#4af1d0', 'kazakhstan': '#57f7c9', 'turkmenistan': '#65fcc3', 'uzbekistan': '#72febc', 'iran': '#80ffb4', 'italy': '#8dfead', 'poland': '#9afca5', 'switzerland': '#a8f79d', 'norway': '#b5f194', 'the netherlands': '#c3ea8b', 'kenya': '#d0e083', 'uganda': '#ddd579', 'democratic republic of the congo': '#ebc970', 'vietnam': '#f8bc66', 'myanmar': '#ffad5d', 'united states of america': '#ff9d53', 'peru': '#ff8b49', 'canada': '#ff793f', 'indonesia': '#ff6634', 'madagascar': '#ff532a', 'zimbabwe': '#ff3f20', 'algeria': '#ff2a15', 'brazil': '#ff150b', 'bolivia': '#ff0000', '?': '#969696'}, 'province': {'krasnoyarsk krai': '#8000ff', 'panevezys county': '#7b07ff', 'pärnu maakond': '#760eff', 'irkutsk oblast': '#7216ff', 'bavaria': '#6d1dff', 'altai krai': '#6924fe', 'qinghai': '#642bfe', 'republic of dagestan': '#5f32fe', 'goranboy district': '#5b39fd', 'syunik province': '#5640fd', 'shirak province': '#5247fc', 'gegharkunik province': '#4d4efc', 'samtskhe-javakheti': '#4855fb', 'shahbuz rayon': '#445cfb', 'na': '#3f62fa', 'samara oblast': '#3b69f9', 'sečuán': '#3670f8', 'bayankhongor': '#3176f8', 'inner mongolia': '#2d7cf7', 'sughd province': '#2883f6', 'talas region': '#2489f5', 'altai republic': '#1f8ff4', 'govi-altai': '#1a95f3', 'övörkhangai': '#169bf2', 'ömnögovi': '#11a0f0', 'bayan-ölgii': '#0da6ef', 'khovd': '#08abee', 'xinjiang': '#03b0ed', 'issyk-kul region': '#01b6eb', 'east of england': '#06bbea', 'valencia community': '#0abfe8', 'centre-loire valley': '#0fc4e7', 'osh region': '#14c9e5', 'naryn region': '#18cde4', 'gansu': '#1dd1e2', 'hovsgel': '#21d5e0', 'zavkhan province': '#26d9df', 'dornogovi': '#2adddd', 'tuva republic': '#2fe0db', 'jilin': '#34e4d9', 'st. petersberg': '#38e7d7', 'zabaykalsky krai': '#3dead5', 'heilongjiang': '#41edd3', 'tibet': '#46efd1', 'gandaki pradesh': '#4bf2cf', 'maharashtra': '#4ff4cd', 'himachal pradesh': '#54f6cb', 'kabardino-balkaria': '#58f8c9', 'karachay-cherkessia': '#5df9c6', 'ningxia': '#62fbc4', 'shaanxi': '#66fcc2', 'hebei': '#6bfdbf', 'west kazakhstan region': '#6ffebd', 'nagorno-karabakh republic': '#74febb', 'kyzylorda region': '#79ffb8', 'rostov oblast': '#7dffb6', 'astrakhan oblast': '#82ffb3', 'balkan': '#86ffb0', 'shymkent': '#8bfeae', 'navoiy region': '#90feab', 'almaty region': '#94fda8', 'atyrau region': '#99fca6', 'fizuli district': '#9dfba3', 'baku': '#a2f9a0', 'kurdistan': '#a7f89d', 'shamkir district': '#abf69b', 'stavropol krai': '#b0f498', 'ingushetia': '#b4f295', 'mangystau region': '#b9ef92', 'chechnya': '#beed8f', 'aktobe region': '#c2ea8c', 'atyrau': '#c7e789', 'qazakh district': '#cbe486', 'republic of kalmykia': '#d0e083', 'tatarstan': '#d4dd80', 'lazio': '#d9d97c', 'greater london': '#ded579', \"provence-alpes-côte d'azur\": '#e2d176', 'baden-württemberg': '#e7cd73', 'vilnius county': '#ebc970', 'pomeranian voivodeship': '#f0c46c', 'brandenburg': '#f5bf69', 'nidwalden': '#f9bb66', 'oslo': '#feb662', 'catalonia': '#ffb05f', 'occitanie': '#ffab5c', 'north brabant': '#ffa658', 'nairobi': '#ffa055', 'yunnan': '#ff9b52', 'khánh hoà province': '#ff954e', 'lâm đồng province': '#ff8f4b', 'ho chi minh city': '#ff8947', 'guangxi zhuang': '#ff8344', 'california': '#ff7c40', 'la libertad': '#ff763d', 'tamil nadu': '#ff7039', 'saskatchewan': '#ff6936', 'arizona': '#ff6232', 'new mexico': '#ff5c2f', 'colorado': '#ff552b', 'texas': '#ff4e28', 'nevada': '#ff4724', 'central java': '#ff4020', 'province de fianarantsoa': '#ff391d', 'kirov oblast': '#ff3219', 'gujarat': '#ff2b16', 'fujian': '#ff2412', 'midlands': '#ff1d0e', 'msila': '#ff160b', 'state of mato grosso': '#ff0e07', 'la paz': '#ff0704', 'cajamarca': '#ff0000', '?': '#969696'}, 'continent': {'europe': '#8000ff', 'asia': '#00b4ec', 'africa': '#80ffb4', 'north america': '#ffb462', 'south america': '#ff0000', '?': '#969696'}, 'host_order': {'human': '#d62728', 'rodentia': '#9A9A9A', 'siphonaptera': '#2ca02c', 'na': '#9A9A9A', 'lagomorpha': '#1f77b4', 'phthiraptera': '#2ca02c', 'ixodida': '#2ca02c', 'carnivora': '#1f77b4', 'artiodactyla': '#1f77b4', 'lepidoptera': '#2ca02c', 'marsupialia': '#1f77b4', '?': '#969696'}, 'population': {'0.pre': '#8000ff', '0.pe': '#5148fc', '0.ant': '#238af5', '0.ant4': '#0cc1e8', '3.ant': '#3ae8d7', '4.ant': '#68fcc1', '2.ant': '#97fca7', '2.med': '#c5e88a', '1.pre': '#f3c16a', '1.ant': '#ff8a48', '1.in': '#ff4824', '1.ori': '#ff0000', '?': '#969696'}}\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "DEPRECATED: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", - "\n" + "{'country': {'russia': '#8000ff', 'lithuania': '#7215ff', 'estonia': '#652afe', 'germany': '#573ffd', 'china': '#4a53fc', 'azerbaijan': '#3c66fa', 'armenia': '#2f79f7', 'georgia': '#228bf4', 'mongolia': '#149df1', 'tajikistan': '#07adee', 'kyrgyzstan': '#07bcea', 'england': '#14c9e5', 'spain': '#22d5e0', 'france': '#2fe0db', 'nepal': '#3cead5', 'india': '#4af1d0', 'kazakhstan': '#57f7c9', 'turkmenistan': '#65fcc3', 'uzbekistan': '#72febc', 'iran': '#80ffb4', 'italy': '#8dfead', 'poland': '#9afca5', 'switzerland': '#a8f79d', 'norway': '#b5f194', 'the netherlands': '#c3ea8b', 'kenya': '#d0e083', 'uganda': '#ddd579', 'democratic republic of the congo': '#ebc970', 'vietnam': '#f8bc66', 'myanmar': '#ffad5d', 'united states of america': '#ff9d53', 'peru': '#ff8b49', 'canada': '#ff793f', 'indonesia': '#ff6634', 'madagascar': '#ff532a', 'zimbabwe': '#ff3f20', 'algeria': '#ff2a15', 'brazil': '#ff150b', 'bolivia': '#ff0000'}, 'country_raw': {'russia': '#8000ff', 'lithuania': '#7215ff', 'estonia': '#652afe', 'germany': '#573ffd', 'china': '#4a53fc', 'azerbaijan': '#3c66fa', 'armenia': '#2f79f7', 'georgia': '#228bf4', 'mongolia': '#149df1', 'tajikistan': '#07adee', 'kyrgyzstan': '#07bcea', 'england': '#14c9e5', 'spain': '#22d5e0', 'france': '#2fe0db', 'nepal': '#3cead5', 'india': '#4af1d0', 'kazakhstan': '#57f7c9', 'turkmenistan': '#65fcc3', 'uzbekistan': '#72febc', 'iran': '#80ffb4', 'italy': '#8dfead', 'poland': '#9afca5', 'switzerland': '#a8f79d', 'norway': '#b5f194', 'the netherlands': '#c3ea8b', 'kenya': '#d0e083', 'uganda': '#ddd579', 'democratic republic of the congo': '#ebc970', 'vietnam': '#f8bc66', 'myanmar': '#ffad5d', 'united states of america': '#ff9d53', 'peru': '#ff8b49', 'canada': '#ff793f', 'indonesia': '#ff6634', 'madagascar': '#ff532a', 'zimbabwe': '#ff3f20', 'algeria': '#ff2a15', 'brazil': '#ff150b', 'bolivia': '#ff0000'}, 'province': {'krasnoyarsk krai': '#8000ff', 'panevezys county': '#7b07ff', 'pärnu maakond': '#760eff', 'irkutsk oblast': '#7216ff', 'bavaria': '#6d1dff', 'altai krai': '#6924fe', 'qinghai': '#642bfe', 'republic of dagestan': '#5f32fe', 'goranboy district': '#5b39fd', 'syunik province': '#5640fd', 'shirak province': '#5247fc', 'gegharkunik province': '#4d4efc', 'samtskhe-javakheti': '#4855fb', 'shahbuz rayon': '#445cfb', 'na': '#3f62fa', 'samara oblast': '#3b69f9', 'sečuán': '#3670f8', 'bayankhongor': '#3176f8', 'inner mongolia': '#2d7cf7', 'sughd province': '#2883f6', 'talas region': '#2489f5', 'altai republic': '#1f8ff4', 'govi-altai': '#1a95f3', 'övörkhangai': '#169bf2', 'ömnögovi': '#11a0f0', 'bayan-ölgii': '#0da6ef', 'khovd': '#08abee', 'xinjiang': '#03b0ed', 'issyk-kul region': '#01b6eb', 'east of england': '#06bbea', 'valencia community': '#0abfe8', 'centre-loire valley': '#0fc4e7', 'osh region': '#14c9e5', 'naryn region': '#18cde4', 'gansu': '#1dd1e2', 'hovsgel': '#21d5e0', 'zavkhan province': '#26d9df', 'dornogovi': '#2adddd', 'tuva republic': '#2fe0db', 'jilin': '#34e4d9', 'st. petersberg': '#38e7d7', 'zabaykalsky krai': '#3dead5', 'heilongjiang': '#41edd3', 'tibet': '#46efd1', 'gandaki pradesh': '#4bf2cf', 'maharashtra': '#4ff4cd', 'himachal pradesh': '#54f6cb', 'kabardino-balkaria': '#58f8c9', 'karachay-cherkessia': '#5df9c6', 'ningxia': '#62fbc4', 'shaanxi': '#66fcc2', 'hebei': '#6bfdbf', 'west kazakhstan region': '#6ffebd', 'nagorno-karabakh republic': '#74febb', 'kyzylorda region': '#79ffb8', 'rostov oblast': '#7dffb6', 'astrakhan oblast': '#82ffb3', 'balkan': '#86ffb0', 'shymkent': '#8bfeae', 'navoiy region': '#90feab', 'almaty region': '#94fda8', 'atyrau region': '#99fca6', 'fizuli district': '#9dfba3', 'baku': '#a2f9a0', 'kurdistan': '#a7f89d', 'shamkir district': '#abf69b', 'stavropol krai': '#b0f498', 'ingushetia': '#b4f295', 'mangystau region': '#b9ef92', 'chechnya': '#beed8f', 'aktobe region': '#c2ea8c', 'atyrau': '#c7e789', 'qazakh district': '#cbe486', 'republic of kalmykia': '#d0e083', 'tatarstan': '#d4dd80', 'lazio': '#d9d97c', 'greater london': '#ded579', \"provence-alpes-côte d'azur\": '#e2d176', 'baden-württemberg': '#e7cd73', 'vilnius county': '#ebc970', 'pomeranian voivodeship': '#f0c46c', 'brandenburg': '#f5bf69', 'nidwalden': '#f9bb66', 'oslo': '#feb662', 'catalonia': '#ffb05f', 'occitanie': '#ffab5c', 'north brabant': '#ffa658', 'nairobi': '#ffa055', 'yunnan': '#ff9b52', 'khánh hoà province': '#ff954e', 'lâm đồng province': '#ff8f4b', 'ho chi minh city': '#ff8947', 'guangxi zhuang': '#ff8344', 'california': '#ff7c40', 'la libertad': '#ff763d', 'tamil nadu': '#ff7039', 'saskatchewan': '#ff6936', 'arizona': '#ff6232', 'new mexico': '#ff5c2f', 'colorado': '#ff552b', 'texas': '#ff4e28', 'nevada': '#ff4724', 'central java': '#ff4020', 'province de fianarantsoa': '#ff391d', 'kirov oblast': '#ff3219', 'gujarat': '#ff2b16', 'fujian': '#ff2412', 'midlands': '#ff1d0e', 'msila': '#ff160b', 'state of mato grosso': '#ff0e07', 'la paz': '#ff0704', 'cajamarca': '#ff0000'}, 'province_raw': {'krasnoyarsk krai': '#8000ff', 'panevezys county': '#7b07ff', 'pärnu maakond': '#760eff', 'irkutsk oblast': '#7216ff', 'bavaria': '#6d1dff', 'altai krai': '#6924fe', 'qinghai': '#642bfe', 'republic of dagestan': '#5f32fe', 'goranboy district': '#5b39fd', 'syunik province': '#5640fd', 'shirak province': '#5247fc', 'gegharkunik province': '#4d4efc', 'samtskhe-javakheti': '#4855fb', 'shahbuz rayon': '#445cfb', 'na': '#3f62fa', 'samara oblast': '#3b69f9', 'sečuán': '#3670f8', 'bayankhongor': '#3176f8', 'inner mongolia': '#2d7cf7', 'sughd province': '#2883f6', 'talas region': '#2489f5', 'altai republic': '#1f8ff4', 'govi-altai': '#1a95f3', 'övörkhangai': '#169bf2', 'ömnögovi': '#11a0f0', 'bayan-ölgii': '#0da6ef', 'khovd': '#08abee', 'xinjiang': '#03b0ed', 'issyk-kul region': '#01b6eb', 'east of england': '#06bbea', 'valencia community': '#0abfe8', 'centre-loire valley': '#0fc4e7', 'osh region': '#14c9e5', 'naryn region': '#18cde4', 'gansu': '#1dd1e2', 'hovsgel': '#21d5e0', 'zavkhan province': '#26d9df', 'dornogovi': '#2adddd', 'tuva republic': '#2fe0db', 'jilin': '#34e4d9', 'st. petersberg': '#38e7d7', 'zabaykalsky krai': '#3dead5', 'heilongjiang': '#41edd3', 'tibet': '#46efd1', 'gandaki pradesh': '#4bf2cf', 'maharashtra': '#4ff4cd', 'himachal pradesh': '#54f6cb', 'kabardino-balkaria': '#58f8c9', 'karachay-cherkessia': '#5df9c6', 'ningxia': '#62fbc4', 'shaanxi': '#66fcc2', 'hebei': '#6bfdbf', 'west kazakhstan region': '#6ffebd', 'nagorno-karabakh republic': '#74febb', 'kyzylorda region': '#79ffb8', 'rostov oblast': '#7dffb6', 'astrakhan oblast': '#82ffb3', 'balkan': '#86ffb0', 'shymkent': '#8bfeae', 'navoiy region': '#90feab', 'almaty region': '#94fda8', 'atyrau region': '#99fca6', 'fizuli district': '#9dfba3', 'baku': '#a2f9a0', 'kurdistan': '#a7f89d', 'shamkir district': '#abf69b', 'stavropol krai': '#b0f498', 'ingushetia': '#b4f295', 'mangystau region': '#b9ef92', 'chechnya': '#beed8f', 'aktobe region': '#c2ea8c', 'atyrau': '#c7e789', 'qazakh district': '#cbe486', 'republic of kalmykia': '#d0e083', 'tatarstan': '#d4dd80', 'lazio': '#d9d97c', 'greater london': '#ded579', \"provence-alpes-côte d'azur\": '#e2d176', 'baden-württemberg': '#e7cd73', 'vilnius county': '#ebc970', 'pomeranian voivodeship': '#f0c46c', 'brandenburg': '#f5bf69', 'nidwalden': '#f9bb66', 'oslo': '#feb662', 'catalonia': '#ffb05f', 'occitanie': '#ffab5c', 'north brabant': '#ffa658', 'nairobi': '#ffa055', 'yunnan': '#ff9b52', 'khánh hoà province': '#ff954e', 'lâm đồng province': '#ff8f4b', 'ho chi minh city': '#ff8947', 'guangxi zhuang': '#ff8344', 'california': '#ff7c40', 'la libertad': '#ff763d', 'tamil nadu': '#ff7039', 'saskatchewan': '#ff6936', 'arizona': '#ff6232', 'new mexico': '#ff5c2f', 'colorado': '#ff552b', 'texas': '#ff4e28', 'nevada': '#ff4724', 'central java': '#ff4020', 'province de fianarantsoa': '#ff391d', 'kirov oblast': '#ff3219', 'gujarat': '#ff2b16', 'fujian': '#ff2412', 'midlands': '#ff1d0e', 'msila': '#ff160b', 'state of mato grosso': '#ff0e07', 'la paz': '#ff0704', 'cajamarca': '#ff0000'}, 'continent': {'europe': '#8000ff', 'asia': '#00b4ec', 'africa': '#80ffb4', 'north america': '#ffb462', 'south america': '#ff0000'}, 'continent_raw': {'europe': '#8000ff', 'asia': '#00b4ec', 'africa': '#80ffb4', 'north america': '#ffb462', 'south america': '#ff0000'}, 'host_order': {'human': '#d62728', 'rodentia': '#525252', 'siphonaptera': '#2ca02c', 'na': '#FFFFFF', 'lagomorpha': '#1f77b4', 'phthiraptera': '#2ca02c', 'ixodida': '#2ca02c', 'carnivora': '#1f77b4', 'artiodactyla': '#1f77b4', 'lepidoptera': '#2ca02c', 'marsupialia': '#1f77b4'}, 'host_order_raw': {'human': '#d62728', 'rodentia': '#525252', 'siphonaptera': '#2ca02c', 'na': '#FFFFFF', 'lagomorpha': '#1f77b4', 'phthiraptera': '#2ca02c', 'ixodida': '#2ca02c', 'carnivora': '#1f77b4', 'artiodactyla': '#1f77b4', 'lepidoptera': '#2ca02c', 'marsupialia': '#1f77b4'}, 'population': {'0.pre': '#8000ff', '0.pe': '#5148fc', '0.ant': '#238af5', '0.ant4': '#0cc1e8', '3.ant': '#3ae8d7', '4.ant': '#68fcc1', '2.ant': '#97fca7', '2.med': '#c5e88a', '1.pre': '#f3c16a', '1.ant': '#ff8a48', '1.in': '#ff4824', '1.ori': '#ff0000'}, 'population_raw': {'0.pre': '#8000ff', '0.pe': '#5148fc', '0.ant': '#238af5', '0.ant4': '#0cc1e8', '3.ant': '#3ae8d7', '4.ant': '#68fcc1', '2.ant': '#97fca7', '2.med': '#c5e88a', '1.pre': '#f3c16a', '1.ant': '#ff8a48', '1.in': '#ff4824', '1.ori': '#ff0000'}}\n" ] } ], @@ -3179,7 +3180,10 @@ "out_path_colors = os.path.join(augur_dir, \"colors.tsv\")\n", "\n", "colors_dict = {}\n", - "neutral_color = \"#9A9A9A\"\n", + "no_data_color = \"#FFFFFF\"\n", + "#neutral_color = \"#9A9A9A\"\n", + "#neutral_color = \"#383838\"\n", + "neutral_color = \"#525252\"\n", "\n", "host_manual_color = {\n", " # Rodent is baseline\n", @@ -3196,12 +3200,14 @@ " 'ixodida': \"#2ca02c\", \n", " 'lepidoptera': \"#2ca02c\", \n", " # Other\n", - " 'na': neutral_color, \n", + " 'na': no_data_color, \n", "}\n", "\n", "for attr in mug_dict:\n", " # Create the color map\n", " colors_dict[attr] = {}\n", + " colors_dict[attr + \"_raw\"] = {}\n", + " \n", " for t in divtree.get_terminals():\n", " attr_val = metadata_df[attr][t.name].lower()\n", " \n", @@ -3225,10 +3231,12 @@ " \n", " # Assign colors to value\n", " for attr_val, attr_col in zip(colors_dict[attr], attr_hex):\n", - " colors_dict[attr][attr_val] = attr_col \n", + " colors_dict[attr][attr_val] = attr_col\n", + " colors_dict[attr + \"_raw\"][attr_val] = attr_col\n", " \n", " # Add unknown\n", - " colors_dict[attr][UNKNOWN_CHAR] = \"#969696\"\n", + " #colors_dict[attr][UNKNOWN_CHAR] = no_data_color\n", + " #colors_dict[attr + \"_raw\"][UNKNOWN_CHAR] = no_data_color\n", " \n", "print(colors_dict)\n", "\n", @@ -3470,15 +3478,15 @@ " North America\n", " Human\n", " 1.ORI\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 39.783730\n", " -100.445882\n", " 38.725178\n", @@ -3545,15 +3553,15 @@ " Europe\n", " Human\n", " 2.MED\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 64.686314\n", " 97.745306\n", " 47.622245\n", @@ -3620,15 +3628,15 @@ " Asia\n", " Rodentia\n", " 0.ANT\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 35.000074\n", " 104.999927\n", " 42.480495\n", @@ -3695,15 +3703,15 @@ " Asia\n", " Siphonaptera\n", " 0.ANT\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 35.000074\n", " 104.999927\n", " 42.480495\n", @@ -3770,15 +3778,15 @@ " Asia\n", " Rodentia\n", " 0.ANT\n", - " 1.0\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.00\n", + " 100.0\n", " 1.000000\n", " 1.000000\n", - " 1.0\n", - " 1.00\n", - " 1.0\n", + " 100.0\n", + " 100.0\n", + " 100.0\n", " 35.000074\n", " 104.999927\n", " 42.480495\n", @@ -3920,15 +3928,15 @@ " South America\n", " Human\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.00\n", + " 99.0\n", " 0.999873\n", " 0.999873\n", - " 1.0\n", - " 0.55\n", - " 1.0\n", + " 99.0\n", + " 55.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -3995,15 +4003,15 @@ " South America\n", " Rodentia\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.00\n", + " 99.0\n", " 0.999998\n", " 0.999998\n", - " 1.0\n", - " 0.61\n", - " 1.0\n", + " 99.0\n", + " 60.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -4070,15 +4078,15 @@ " South America\n", " Rodentia\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.00\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.0\n", - " 0.56\n", - " 1.0\n", + " 99.0\n", + " 55.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -4145,15 +4153,15 @@ " South America\n", " Human\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 1.00\n", + " 99.0\n", " 0.999874\n", " 0.999874\n", - " 1.0\n", - " 0.60\n", - " 1.0\n", + " 99.0\n", + " 59.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -4220,15 +4228,15 @@ " South America\n", " Rodentia\n", " 1.ORI\n", - " 1.0\n", + " 99.0\n", " 0.999999\n", " 0.999999\n", - " 0.99\n", + " 99.0\n", " 0.991635\n", " 0.991635\n", - " 1.0\n", - " 0.82\n", - " 1.0\n", + " 99.0\n", + " 82.0\n", + " 99.0\n", " -6.869970\n", " -75.045851\n", " -6.250000\n", @@ -4578,17 +4586,17 @@ "\n", " mugration_country_confidence \\\n", "sample \n", - "Reference 1.0 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.0 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.0 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.0 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.0 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 1.0 \n", - "NODE596 1.0 \n", - "NODE597 1.0 \n", - "NODE598 1.0 \n", - "NODE599 1.0 \n", + "NODE595 99.0 \n", + "NODE596 99.0 \n", + "NODE597 99.0 \n", + "NODE598 99.0 \n", + "NODE599 99.0 \n", "\n", " mugration_country_lat_confidence \\\n", "sample \n", @@ -4620,17 +4628,17 @@ "\n", " mugration_province_confidence \\\n", "sample \n", - "Reference 1.00 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.00 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.00 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.00 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.00 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 1.00 \n", - "NODE596 1.00 \n", - "NODE597 1.00 \n", - "NODE598 1.00 \n", - "NODE599 0.99 \n", + "NODE595 99.0 \n", + "NODE596 99.0 \n", + "NODE597 99.0 \n", + "NODE598 99.0 \n", + "NODE599 99.0 \n", "\n", " mugration_province_lat_confidence \\\n", "sample \n", @@ -4662,45 +4670,45 @@ "\n", " mugration_continent_confidence \\\n", "sample \n", - "Reference 1.0 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.0 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.0 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.0 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.0 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 1.0 \n", - "NODE596 1.0 \n", - "NODE597 1.0 \n", - "NODE598 1.0 \n", - "NODE599 1.0 \n", + "NODE595 99.0 \n", + "NODE596 99.0 \n", + "NODE597 99.0 \n", + "NODE598 99.0 \n", + "NODE599 99.0 \n", "\n", " mugration_host_order_confidence \\\n", "sample \n", - "Reference 1.00 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.00 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.00 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.00 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.00 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 0.55 \n", - "NODE596 0.61 \n", - "NODE597 0.56 \n", - "NODE598 0.60 \n", - "NODE599 0.82 \n", + "NODE595 55.0 \n", + "NODE596 60.0 \n", + "NODE597 55.0 \n", + "NODE598 59.0 \n", + "NODE599 82.0 \n", "\n", " mugration_population_confidence \\\n", "sample \n", - "Reference 1.0 \n", - "GCA_009909635.1_ASM990963v1_genomic 1.0 \n", - "GCA_009669545.1_ASM966954v1_genomic 1.0 \n", - "GCA_009669555.1_ASM966955v1_genomic 1.0 \n", - "GCA_009669565.1_ASM966956v1_genomic 1.0 \n", + "Reference 100.0 \n", + "GCA_009909635.1_ASM990963v1_genomic 100.0 \n", + "GCA_009669545.1_ASM966954v1_genomic 100.0 \n", + "GCA_009669555.1_ASM966955v1_genomic 100.0 \n", + "GCA_009669565.1_ASM966956v1_genomic 100.0 \n", "... ... \n", - "NODE595 1.0 \n", - "NODE596 1.0 \n", - "NODE597 1.0 \n", - "NODE598 1.0 \n", - "NODE599 1.0 \n", + "NODE595 99.0 \n", + "NODE596 99.0 \n", + "NODE597 99.0 \n", + "NODE598 99.0 \n", + "NODE599 99.0 \n", "\n", " mugration_country_lat \\\n", "sample \n", @@ -5095,10 +5103,18 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 35, "id": "acceptable-robin", "metadata": {}, "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "DEPRECATED: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", + "\n" + ] + }, { "data": { "text/html": [ @@ -5132,6 +5148,7 @@ " branch_support_conf_char\n", " node_type\n", " branch_number\n", + " host_human\n", " biosample_accession\n", " strain\n", " country_date_strain\n", @@ -5142,16 +5159,21 @@ " rate_sub_year\n", " country_lat\n", " country_lon\n", + " country_raw\n", " mugration_country\n", " mugration_country_confidence\n", " province_lat\n", " province_lon\n", + " province_raw\n", " mugration_province\n", " mugration_province_confidence\n", + " continent_raw\n", " mugration_continent\n", " mugration_continent_confidence\n", + " host_order_raw\n", " mugration_host_order\n", " mugration_host_order_confidence\n", + " population_raw\n", " mugration_population\n", " mugration_population_confidence\n", " timetree_num_date_confidence\n", @@ -5207,6 +5229,12 @@ " \n", " \n", " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -5224,6 +5252,7 @@ " \n", " terminal\n", " 1\n", + " Human\n", " SAMEA1705942\n", " CO92\n", " United States of America (1992) CO92\n", @@ -5235,16 +5264,21 @@ " 39.783730\n", " -100.445882\n", " United States of America\n", + " United States of America\n", " 1.0\n", " 38.725178\n", " -105.607716\n", " Colorado\n", + " Colorado\n", " 1.00\n", " North America\n", + " North America\n", " 1.0\n", " Human\n", + " Human\n", " 1.00\n", " 1.ORI\n", + " 1.ORI\n", " 1.0\n", " [1992.0, 1992.0]\n", " Reference\n", @@ -5269,6 +5303,7 @@ " \n", " terminal\n", " 2\n", + " Human\n", " SAMN13632815\n", " 9_10\n", " Russia (1923.0) 9_10\n", @@ -5280,16 +5315,21 @@ " 64.686314\n", " 97.745306\n", " Russia\n", + " Russia\n", " 1.0\n", " 47.622245\n", " 40.795794\n", " Rostov Oblast\n", + " Rostov Oblast\n", " 1.00\n", " Europe\n", + " Europe\n", " 1.0\n", " Human\n", + " Human\n", " 1.00\n", " 2.MED\n", + " 2.MED\n", " 1.0\n", " [1923.0, 1923.0]\n", " GCA_009909635.1_ASM990963v1_genomic\n", @@ -5314,6 +5354,7 @@ " \n", " terminal\n", " 0\n", + " Non-Human\n", " SAMN07722925\n", " 42126\n", " China (2006.0) 42126\n", @@ -5325,16 +5366,21 @@ " 35.000074\n", " 104.999927\n", " China\n", + " China\n", " 1.0\n", " 42.480495\n", " 85.463346\n", " Xinjiang\n", + " Xinjiang\n", " 1.00\n", " Asia\n", + " Asia\n", " 1.0\n", " Rodentia\n", + " Rodentia\n", " 1.00\n", " 0.ANT\n", + " 0.ANT\n", " 1.0\n", " [2006.0, 2006.0]\n", " GCA_009669545.1_ASM966954v1_genomic\n", @@ -5359,6 +5405,7 @@ " \n", " terminal\n", " 0\n", + " Non-Human\n", " SAMN07722924\n", " 42123\n", " China (2005.0) 42123\n", @@ -5370,16 +5417,21 @@ " 35.000074\n", " 104.999927\n", " China\n", + " China\n", " 1.0\n", " 42.480495\n", " 85.463346\n", " Xinjiang\n", + " Xinjiang\n", " 1.00\n", " Asia\n", + " Asia\n", " 1.0\n", " Siphonaptera\n", + " Siphonaptera\n", " 1.00\n", " 0.ANT\n", + " 0.ANT\n", " 1.0\n", " [2005.0, 2005.0]\n", " GCA_009669555.1_ASM966955v1_genomic\n", @@ -5404,6 +5456,7 @@ " \n", " terminal\n", " 0\n", + " Non-Human\n", " SAMN07722923\n", " 42118\n", " China (2005.0) 42118\n", @@ -5415,16 +5468,21 @@ " 35.000074\n", " 104.999927\n", " China\n", + " China\n", " 1.0\n", " 42.480495\n", " 85.463346\n", " Xinjiang\n", + " Xinjiang\n", " 1.00\n", " Asia\n", + " Asia\n", " 1.0\n", " Rodentia\n", + " Rodentia\n", " 1.00\n", " 0.ANT\n", + " 0.ANT\n", " 1.0\n", " [2005.0, 2005.0]\n", " GCA_009669565.1_ASM966956v1_genomic\n", @@ -5479,6 +5537,12 @@ " ...\n", " ...\n", " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", " \n", " \n", " NODE595\n", @@ -5500,20 +5564,26 @@ " NA\n", " NA\n", " NA\n", + " NA\n", " 0.000000e+00\n", " 0.000000\n", " -6.869970\n", " -75.045851\n", + " NA\n", " Peru\n", " 1.0\n", " -6.250000\n", " -78.833333\n", + " NA\n", " Cajamarca\n", " 1.00\n", + " NA\n", " South America\n", " 1.0\n", + " NA\n", " Human\n", " 0.55\n", + " NA\n", " 1.ORI\n", " 1.0\n", " [1884.0, 1932.0]\n", @@ -5545,20 +5615,26 @@ " NA\n", " NA\n", " NA\n", + " NA\n", " 0.000000e+00\n", " 0.000000\n", " -6.869970\n", " -75.045851\n", + " NA\n", " Peru\n", " 1.0\n", " -6.250000\n", " -78.833333\n", + " NA\n", " Cajamarca\n", " 1.00\n", + " NA\n", " South America\n", " 1.0\n", + " NA\n", " Rodentia\n", " 0.61\n", + " NA\n", " 1.ORI\n", " 1.0\n", " [1884.0, 1932.0]\n", @@ -5590,20 +5666,26 @@ " NA\n", " NA\n", " NA\n", + " NA\n", " 8.797265e-09\n", " 0.037204\n", " -6.869970\n", " -75.045851\n", + " NA\n", " Peru\n", " 1.0\n", " -6.250000\n", " -78.833333\n", + " NA\n", " Cajamarca\n", " 1.00\n", + " NA\n", " South America\n", " 1.0\n", + " NA\n", " Rodentia\n", " 0.56\n", + " NA\n", " 1.ORI\n", " 1.0\n", " [1905.0, 1971.0]\n", @@ -5635,20 +5717,26 @@ " NA\n", " NA\n", " NA\n", + " NA\n", " 1.216191e-09\n", " 0.005143\n", " -6.869970\n", " -75.045851\n", + " NA\n", " Peru\n", " 1.0\n", " -6.250000\n", " -78.833333\n", + " NA\n", " Cajamarca\n", " 1.00\n", + " NA\n", " South America\n", " 1.0\n", + " NA\n", " Human\n", " 0.60\n", + " NA\n", " 1.ORI\n", " 1.0\n", " [1915.0, 1981.0]\n", @@ -5680,20 +5768,26 @@ " NA\n", " NA\n", " NA\n", + " NA\n", " 1.405518e-08\n", " 0.059441\n", " -6.869970\n", " -75.045851\n", + " NA\n", " Peru\n", " 1.0\n", " -6.250000\n", " -78.833333\n", + " NA\n", " Cajamarca\n", " 0.99\n", + " NA\n", " South America\n", " 1.0\n", + " NA\n", " Rodentia\n", " 0.82\n", + " NA\n", " 1.ORI\n", " 1.0\n", " [1933.0, 1994.0]\n", @@ -5707,7 +5801,7 @@ " \n", " \n", "\n", - "

1201 rows × 42 columns

\n", + "

1201 rows × 48 columns

\n", "" ], "text/plain": [ @@ -5795,19 +5889,33 @@ "NODE598 internal \n", "NODE599 internal \n", "\n", - " branch_number biosample_accession strain \\\n", - "sample \n", - "Reference 1 SAMEA1705942 CO92 \n", - "GCA_009909635.1_ASM990963v1_genomic 2 SAMN13632815 9_10 \n", - "GCA_009669545.1_ASM966954v1_genomic 0 SAMN07722925 42126 \n", - "GCA_009669555.1_ASM966955v1_genomic 0 SAMN07722924 42123 \n", - "GCA_009669565.1_ASM966956v1_genomic 0 SAMN07722923 42118 \n", - "... ... ... ... \n", - "NODE595 NA NA NA \n", - "NODE596 NA NA NA \n", - "NODE597 NA NA NA \n", - "NODE598 NA NA NA \n", - "NODE599 NA NA NA \n", + " branch_number host_human \\\n", + "sample \n", + "Reference 1 Human \n", + "GCA_009909635.1_ASM990963v1_genomic 2 Human \n", + "GCA_009669545.1_ASM966954v1_genomic 0 Non-Human \n", + "GCA_009669555.1_ASM966955v1_genomic 0 Non-Human \n", + "GCA_009669565.1_ASM966956v1_genomic 0 Non-Human \n", + "... ... ... \n", + "NODE595 NA NA \n", + "NODE596 NA NA \n", + "NODE597 NA NA \n", + "NODE598 NA NA \n", + "NODE599 NA NA \n", + "\n", + " biosample_accession strain \\\n", + "sample \n", + "Reference SAMEA1705942 CO92 \n", + "GCA_009909635.1_ASM990963v1_genomic SAMN13632815 9_10 \n", + "GCA_009669545.1_ASM966954v1_genomic SAMN07722925 42126 \n", + "GCA_009669555.1_ASM966955v1_genomic SAMN07722924 42123 \n", + "GCA_009669565.1_ASM966956v1_genomic SAMN07722923 42118 \n", + "... ... ... \n", + "NODE595 NA NA \n", + "NODE596 NA NA \n", + "NODE597 NA NA \n", + "NODE598 NA NA \n", + "NODE599 NA NA \n", "\n", " country_date_strain \\\n", "sample \n", @@ -5865,7 +5973,7 @@ "NODE598 1.216191e-09 0.005143 -6.869970 \n", "NODE599 1.405518e-08 0.059441 -6.869970 \n", "\n", - " country_lon mugration_country \\\n", + " country_lon country_raw \\\n", "sample \n", "Reference -100.445882 United States of America \n", "GCA_009909635.1_ASM990963v1_genomic 97.745306 Russia \n", @@ -5873,11 +5981,25 @@ "GCA_009669555.1_ASM966955v1_genomic 104.999927 China \n", "GCA_009669565.1_ASM966956v1_genomic 104.999927 China \n", "... ... ... \n", - "NODE595 -75.045851 Peru \n", - "NODE596 -75.045851 Peru \n", - "NODE597 -75.045851 Peru \n", - "NODE598 -75.045851 Peru \n", - "NODE599 -75.045851 Peru \n", + "NODE595 -75.045851 NA \n", + "NODE596 -75.045851 NA \n", + "NODE597 -75.045851 NA \n", + "NODE598 -75.045851 NA \n", + "NODE599 -75.045851 NA \n", + "\n", + " mugration_country \\\n", + "sample \n", + "Reference United States of America \n", + "GCA_009909635.1_ASM990963v1_genomic Russia \n", + "GCA_009669545.1_ASM966954v1_genomic China \n", + "GCA_009669555.1_ASM966955v1_genomic China \n", + "GCA_009669565.1_ASM966956v1_genomic China \n", + "... ... \n", + "NODE595 Peru \n", + "NODE596 Peru \n", + "NODE597 Peru \n", + "NODE598 Peru \n", + "NODE599 Peru \n", "\n", " mugration_country_confidence \\\n", "sample \n", @@ -5907,19 +6029,19 @@ "NODE598 -6.250000 -78.833333 \n", "NODE599 -6.250000 -78.833333 \n", "\n", - " mugration_province \\\n", - "sample \n", - "Reference Colorado \n", - "GCA_009909635.1_ASM990963v1_genomic Rostov Oblast \n", - "GCA_009669545.1_ASM966954v1_genomic Xinjiang \n", - "GCA_009669555.1_ASM966955v1_genomic Xinjiang \n", - "GCA_009669565.1_ASM966956v1_genomic Xinjiang \n", - "... ... \n", - "NODE595 Cajamarca \n", - "NODE596 Cajamarca \n", - "NODE597 Cajamarca \n", - "NODE598 Cajamarca \n", - "NODE599 Cajamarca \n", + " province_raw mugration_province \\\n", + "sample \n", + "Reference Colorado Colorado \n", + "GCA_009909635.1_ASM990963v1_genomic Rostov Oblast Rostov Oblast \n", + "GCA_009669545.1_ASM966954v1_genomic Xinjiang Xinjiang \n", + "GCA_009669555.1_ASM966955v1_genomic Xinjiang Xinjiang \n", + "GCA_009669565.1_ASM966956v1_genomic Xinjiang Xinjiang \n", + "... ... ... \n", + "NODE595 NA Cajamarca \n", + "NODE596 NA Cajamarca \n", + "NODE597 NA Cajamarca \n", + "NODE598 NA Cajamarca \n", + "NODE599 NA Cajamarca \n", "\n", " mugration_province_confidence \\\n", "sample \n", @@ -5935,19 +6057,19 @@ "NODE598 1.00 \n", "NODE599 0.99 \n", "\n", - " mugration_continent \\\n", - "sample \n", - "Reference North America \n", - "GCA_009909635.1_ASM990963v1_genomic Europe \n", - "GCA_009669545.1_ASM966954v1_genomic Asia \n", - "GCA_009669555.1_ASM966955v1_genomic Asia \n", - "GCA_009669565.1_ASM966956v1_genomic Asia \n", - "... ... \n", - "NODE595 South America \n", - "NODE596 South America \n", - "NODE597 South America \n", - "NODE598 South America \n", - "NODE599 South America \n", + " continent_raw mugration_continent \\\n", + "sample \n", + "Reference North America North America \n", + "GCA_009909635.1_ASM990963v1_genomic Europe Europe \n", + "GCA_009669545.1_ASM966954v1_genomic Asia Asia \n", + "GCA_009669555.1_ASM966955v1_genomic Asia Asia \n", + "GCA_009669565.1_ASM966956v1_genomic Asia Asia \n", + "... ... ... \n", + "NODE595 NA South America \n", + "NODE596 NA South America \n", + "NODE597 NA South America \n", + "NODE598 NA South America \n", + "NODE599 NA South America \n", "\n", " mugration_continent_confidence \\\n", "sample \n", @@ -5963,19 +6085,19 @@ "NODE598 1.0 \n", "NODE599 1.0 \n", "\n", - " mugration_host_order \\\n", - "sample \n", - "Reference Human \n", - "GCA_009909635.1_ASM990963v1_genomic Human \n", - "GCA_009669545.1_ASM966954v1_genomic Rodentia \n", - "GCA_009669555.1_ASM966955v1_genomic Siphonaptera \n", - "GCA_009669565.1_ASM966956v1_genomic Rodentia \n", - "... ... \n", - "NODE595 Human \n", - "NODE596 Rodentia \n", - "NODE597 Rodentia \n", - "NODE598 Human \n", - "NODE599 Rodentia \n", + " host_order_raw mugration_host_order \\\n", + "sample \n", + "Reference Human Human \n", + "GCA_009909635.1_ASM990963v1_genomic Human Human \n", + "GCA_009669545.1_ASM966954v1_genomic Rodentia Rodentia \n", + "GCA_009669555.1_ASM966955v1_genomic Siphonaptera Siphonaptera \n", + "GCA_009669565.1_ASM966956v1_genomic Rodentia Rodentia \n", + "... ... ... \n", + "NODE595 NA Human \n", + "NODE596 NA Rodentia \n", + "NODE597 NA Rodentia \n", + "NODE598 NA Human \n", + "NODE599 NA Rodentia \n", "\n", " mugration_host_order_confidence \\\n", "sample \n", @@ -5991,19 +6113,19 @@ "NODE598 0.60 \n", "NODE599 0.82 \n", "\n", - " mugration_population \\\n", - "sample \n", - "Reference 1.ORI \n", - "GCA_009909635.1_ASM990963v1_genomic 2.MED \n", - "GCA_009669545.1_ASM966954v1_genomic 0.ANT \n", - "GCA_009669555.1_ASM966955v1_genomic 0.ANT \n", - "GCA_009669565.1_ASM966956v1_genomic 0.ANT \n", - "... ... \n", - "NODE595 1.ORI \n", - "NODE596 1.ORI \n", - "NODE597 1.ORI \n", - "NODE598 1.ORI \n", - "NODE599 1.ORI \n", + " population_raw mugration_population \\\n", + "sample \n", + "Reference 1.ORI 1.ORI \n", + "GCA_009909635.1_ASM990963v1_genomic 2.MED 2.MED \n", + "GCA_009669545.1_ASM966954v1_genomic 0.ANT 0.ANT \n", + "GCA_009669555.1_ASM966955v1_genomic 0.ANT 0.ANT \n", + "GCA_009669565.1_ASM966956v1_genomic 0.ANT 0.ANT \n", + "... ... ... \n", + "NODE595 NA 1.ORI \n", + "NODE596 NA 1.ORI \n", + "NODE597 NA 1.ORI \n", + "NODE598 NA 1.ORI \n", + "NODE599 NA 1.ORI \n", "\n", " mugration_population_confidence \\\n", "sample \n", @@ -6117,7 +6239,7 @@ "NODE598 HIGH \n", "NODE599 HIGH \n", "\n", - "[1201 rows x 42 columns]" + "[1201 rows x 48 columns]" ] }, "metadata": {}, @@ -6143,7 +6265,8 @@ " \"branch_support_conf_char\", \n", " # Filters\n", " \"node_type\",\n", - " \"branch_number\", \n", + " \"branch_number\",\n", + " \"host_human\",\n", " # Text Description\n", " \"biosample_accession\",\n", " \"strain\",\n", @@ -6167,7 +6290,8 @@ " lon_colname = \"mugration_\" + lon_colname\n", " columns.append(lat_colname)\n", " columns.append(lon_colname)\n", - " \n", + " \n", + " columns.append(attr)\n", " columns.append(mug_colname)\n", " columns.append(conf_colname)\n", " \n", @@ -6178,17 +6302,22 @@ "auspice_df[\"node_name\"] = list(auspice_df.index)\n", "auspice_df[\"blank\"] = [\" \"] * len(auspice_df)\n", "\n", - "# Add mugration confidence categories\n", + "# Retype mugration confidence and add categories\n", "for attr in mug_dict:\n", " colname = attr + \"_conf_category\"\n", " for rec in auspice_df.iterrows():\n", " sample = rec[0]\n", " conf = auspice_df[\"mugration_\" + attr + \"_confidence\"][sample]\n", + " \n", " category = \"LOW\"\n", " if conf >= 0.95:\n", " category = \"HIGH\"\n", " auspice_df.at[sample, colname] = category\n", - "\n", + " \n", + " # Recode to str\n", + " #str_conf = str(int(conf * 100))\n", + " #auspice_df.at[sample, \"mugration_\" + attr + \"_confidence\"] = str_conf\n", + " \n", "# Date formating\n", "for rec in metadata_df.iterrows():\n", " sample = rec[0]\n", @@ -6204,11 +6333,17 @@ "\n", " \n", "# Rename columns\n", + "for attr in mug_dict:\n", + " auspice_df.rename(columns={attr: attr + \"_raw\"}, inplace=True) \n", + "\n", "auspice_df.rename(columns={\"timetree_date_calendar\": \"timetree_num_date\"}, inplace=True)\n", "auspice_df.rename(columns={\"mugration_country_lat\": \"country_lat\"}, inplace=True)\n", "auspice_df.rename(columns={\"mugration_country_lon\": \"country_lon\"}, inplace=True)\n", "auspice_df.rename(columns={\"mugration_province_lat\": \"province_lat\"}, inplace=True)\n", "auspice_df.rename(columns={\"mugration_province_lon\": \"province_lon\"}, inplace=True)\n", + "\n", + "# Replace no data\n", + "#auspice_df.replace(to_replace=NO_DATA_CHAR, value=\"Not Available\", inplace=True)\n", "display(auspice_df)" ] }, @@ -6222,15 +6357,23 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 36, "id": "novel-enough", "metadata": {}, "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "DEPRECATED: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the result to `transformed_cell` argument and any exception that happen during thetransform in `preprocessing_exc_tuple` in IPython 7.17 and above.\n", + "\n" + ] + }, { "name": "stdout", "output_type": "stream", "text": [ - "{'branch_length': 4.0046e-06, 'branch_length_sub': 17.0, 'branch_length_time': 163.0, 'num_date': 1992.0, 'date_mean': 1992.0, 'date_err': 0.0, 'date_bp_mean': 29.0, 'branch_support': 0.0, 'branch_support_conf_category': 'LOW', 'branch_support_conf_char': '', 'node_type': 'terminal', 'branch_number': '1.0', 'biosample_accession': 'SAMEA1705942', 'strain': 'CO92', 'country_date_strain': 'United States of America (1992) CO92', 'province_date_strain': 'United States of America (1992) CO92', 'root_rtt_dist': 7.316859999999999e-05, 'population_rtt_dist': 6.3815e-06, 'rate_sub': 2.4639446741484545e-08, 'rate_sub_year': 0.1042026349355188, 'country_lat': 39.7837304, 'country_lon': -100.4458825, 'country': 'United States of America', 'country_confidence': {'United States of America': 1.0}, 'province_lat': 38.7251776, 'province_lon': -105.607716, 'province': 'Colorado', 'province_confidence': {'Colorado': 1.0}, 'continent': 'North America', 'continent_confidence': {'North America': 1.0}, 'host_order': 'Human', 'host_order_confidence': {'Human': 1.0}, 'population': '1.ORI', 'population_confidence': {'1.ORI': 1.0}, 'num_date_confidence': [1992.0, 1992.0], 'node_name': 'Reference', 'blank': ' ', 'country_conf_category': 'HIGH', 'province_conf_category': 'HIGH', 'continent_conf_category': 'HIGH', 'host_order_conf_category': 'HIGH', 'population_conf_category': 'HIGH'}\n" + "{'branch_length': 4.0046e-06, 'branch_length_sub': 17.0, 'branch_length_time': 293.0, 'num_date': 1973.0, 'date_mean': 1973.0, 'date_err': 0.0, 'date_bp_mean': 48.0, 'branch_support': 0.0, 'branch_support_conf_category': 'LOW', 'branch_support_conf_char': '', 'node_type': 'terminal', 'branch_number': '0.0', 'host_human': 'NA', 'biosample_accession': 'SAMN08625969', 'strain': 'I-2457', 'country_date_strain': 'Mongolia (1973.0) I-2457', 'province_date_strain': 'Mongolia (1973.0) I-2457', 'root_rtt_dist': 6.789259999999998e-05, 'population_rtt_dist': 6.56621e-05, 'rate_sub': 1.3649687781201427e-08, 'rate_sub_year': 0.0577258672961034, 'country_lat': 46.8250388, 'country_lon': 103.8499736, 'country_raw': 'Mongolia', 'country': 'Mongolia', 'country_confidence': {'Mongolia': 1.0}, 'province_lat': 43.282363, 'province_lon': 104.1133864, 'province_raw': 'Ömnögovi', 'province': 'Ömnögovi', 'province_confidence': {'Ömnögovi': 1.0}, 'continent_raw': 'Asia', 'continent': 'Asia', 'continent_confidence': {'Asia': 1.0}, 'host_order_raw': 'NA', 'host_order': 'Rodentia', 'host_order_confidence': {'Rodentia': 0.79}, 'population_raw': '0.PE', 'population': '0.PE', 'population_confidence': {'0.PE': 1.0}, 'num_date_confidence': [1973.0, 1973.0], 'node_name': 'GCA_002981995.1_ASM298199v1_genomic', 'blank': ' ', 'country_conf_category': 'HIGH', 'province_conf_category': 'HIGH', 'continent_conf_category': 'HIGH', 'host_order_conf_category': 'LOW', 'population_conf_category': 'HIGH'}\n" ] } ], @@ -6246,7 +6389,8 @@ " },\n", ")\n", "\n", - "print(augur_dict[\"nodes\"][\"Reference\"])\n", + "#print(augur_dict[\"nodes\"][\"Reference\"])\n", + "print(augur_dict[\"nodes\"][\"GCA_002981995.1_ASM298199v1_genomic\"])\n", "\n", "out_path_augur_json = os.path.join(augur_dir, \"all.json\" )\n", "utils.write_json(data=augur_dict, file_name=out_path_augur_json, indent=JSON_INDENT)" @@ -6270,7 +6414,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 37, "id": "buried-business", "metadata": {}, "outputs": [ @@ -6286,7 +6430,13 @@ "name": "stderr", "output_type": "stream", "text": [ - "WARNING: These values for trait province were not specified in your provided color scale: turkmenistan, myanmar, kyrgyzstan, democratic republic of the congo, madagascar, kazakhstan, georgia, vietnam, uganda. Auspice will create colors for them.\n", + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", "\n" ] }, @@ -6307,7 +6457,11 @@ "output_type": "stream", "text": [ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", - "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n" + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n" ] } ], @@ -6375,17 +6529,10 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 38, "id": "neutral-clause", "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "0.PRE #8000ff\n" - ] - }, { "name": "stderr", "output_type": "stream", @@ -6402,28 +6549,54 @@ "name": "stdout", "output_type": "stream", "text": [ + "0.PRE #8000ff\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", "Validation success.\n", "Validating produced JSON\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/0.PRE.json'...\n", "Validating that the JSON is internally consistent...\n", - "Validation of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/0.PRE.json' succeeded, but there were warnings you may want to resolve.\n", - "Validation successful for local JSON.\n", - "\n" + "Validation of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/0.PRE.json' succeeded, but there were warnings you may want to resolve.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"host_order_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"host_order_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", - "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Validation successful for local JSON.\n", + "\n", + "0.PE #5148fc\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6434,7 +6607,6 @@ "name": "stdout", "output_type": "stream", "text": [ - "0.PE #5148fc\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", "Validation success.\n" ] @@ -6443,7 +6615,13 @@ "name": "stderr", "output_type": "stream", "text": [ - "WARNING: These values for trait province were not specified in your provided color scale: georgia. Auspice will create colors for them.\n", + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", "\n" ] }, @@ -6465,9 +6643,13 @@ "output_type": "stream", "text": [ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6486,7 +6668,13 @@ "name": "stderr", "output_type": "stream", "text": [ - "WARNING: These values for trait province were not specified in your provided color scale: kyrgyzstan. Auspice will create colors for them.\n", + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", "\n" ] }, @@ -6509,10 +6697,14 @@ "text": [ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", - "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6524,13 +6716,34 @@ "output_type": "stream", "text": [ "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", - "Validation success.\n", + "Validation success.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "Validating produced JSON\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/0.ANT4.json'...\n", "Validating that the JSON is internally consistent...\n", "Validation of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/0.ANT4.json' succeeded, but there were warnings you may want to resolve.\n", "Validation successful for local JSON.\n", - "\n" + "\n", + "3.ANT #3ae8d7\n" ] }, { @@ -6539,12 +6752,16 @@ "text": [ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"host_order_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"host_order_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", - "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6555,15 +6772,35 @@ "name": "stdout", "output_type": "stream", "text": [ - "3.ANT #3ae8d7\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", "Validation success.\n", "Validating produced JSON\n", - "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/3.ANT.json'...\n", + "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/3.ANT.json'...\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "Validating that the JSON is internally consistent...\n", "Validation of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/3.ANT.json' succeeded, but there were warnings you may want to resolve.\n", "Validation successful for local JSON.\n", - "\n" + "\n", + "4.ANT #68fcc1\n" ] }, { @@ -6573,54 +6810,70 @@ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"country_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"country_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n" + "\n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "4.ANT #68fcc1\n" + "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", + "Validation success.\n", + "Validating produced JSON\n", + "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/4.ANT.json'...\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", "\n", - "A value is trying to be set on a copy of a slice from a DataFrame\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", "\n", - "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n" + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"country_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"country_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", - "Validation success.\n", - "Validating produced JSON\n", - "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/4.ANT.json'...\n", "Validating that the JSON is internally consistent...\n", "Validation of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/4.ANT.json' succeeded, but there were warnings you may want to resolve.\n", "Validation successful for local JSON.\n", - "\n" + "\n", + "2.ANT #97fca7\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", - "\tWARNING: Color option \"country_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", - "\tWARNING: Color option \"country_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6631,9 +6884,28 @@ "name": "stdout", "output_type": "stream", "text": [ - "2.ANT #97fca7\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", - "Validation success.\n", + "Validation success.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "Validating produced JSON\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/2.ANT.json'...\n", "Validating that the JSON is internally consistent...\n", @@ -6648,9 +6920,13 @@ "output_type": "stream", "text": [ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6669,7 +6945,13 @@ "name": "stderr", "output_type": "stream", "text": [ - "WARNING: These values for trait province were not specified in your provided color scale: turkmenistan, kazakhstan. Auspice will create colors for them.\n", + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", "\n" ] }, @@ -6691,9 +6973,13 @@ "output_type": "stream", "text": [ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6705,14 +6991,30 @@ "output_type": "stream", "text": [ "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", - "Validation success.\n", + "Validation success.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "Validating produced JSON\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/1.PRE.json'...\n", - "Validating that the JSON is internally consistent...\n", - "Validation of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/1.PRE.json' succeeded, but there were warnings you may want to resolve.\n", - "Validation successful for local JSON.\n", - "\n", - "1.ANT #ff8a48\n" + "Validating that the JSON is internally consistent...\n" ] }, { @@ -6721,12 +7023,16 @@ "text": [ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"host_order_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"host_order_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", - "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6737,6 +7043,10 @@ "name": "stdout", "output_type": "stream", "text": [ + "Validation of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/1.PRE.json' succeeded, but there were warnings you may want to resolve.\n", + "Validation successful for local JSON.\n", + "\n", + "1.ANT #ff8a48\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", "Validation success.\n", "Validating produced JSON\n", @@ -6752,14 +7062,24 @@ "name": "stderr", "output_type": "stream", "text": [ - "WARNING: These values for trait province were not specified in your provided color scale: uganda, democratic republic of the congo. Auspice will create colors for them.\n", + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", "\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", - "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6771,14 +7091,33 @@ "output_type": "stream", "text": [ "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", - "Validation success.\n", + "Validation success.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "Validating produced JSON\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/1.IN.json'...\n", "Validating that the JSON is internally consistent...\n", "Validation of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/auspice/all/chromosome/full/filter5/ml/1.IN.json' succeeded, but there were warnings you may want to resolve.\n", "Validation successful for local JSON.\n", - "\n", - "1.ORI #ff0000\n" + "\n" ] }, { @@ -6788,11 +7127,15 @@ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"country_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"country_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: Color option \"continent_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", "\n", "A value is trying to be set on a copy of a slice from a DataFrame\n", "\n", @@ -6803,6 +7146,7 @@ "name": "stdout", "output_type": "stream", "text": [ + "1.ORI #ff0000\n", "Validating schema of '/mnt/c/Users/ktmea/Projects/plague-phylogeography/results/config/auspice_config.json'...\n", "Validation success.\n" ] @@ -6811,7 +7155,13 @@ "name": "stderr", "output_type": "stream", "text": [ - "WARNING: These values for trait province were not specified in your provided color scale: myanmar, vietnam, madagascar. Auspice will create colors for them.\n", + "WARNING: [config file] Trait 'host_human' is missing type information. We've guessed 'categorical'.\n", + "\n", + "WARNING: These values for trait continent_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait country_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", + "\n", + "WARNING: These values for trait population_raw were not specified in your provided color scale: na. Auspice will create colors for them.\n", "\n" ] }, @@ -6832,9 +7182,13 @@ "output_type": "stream", "text": [ "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", + "\tWARNING: Color option \"host_order_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n", "\tWARNING: Color option \"population_conf_category\" specifies a hex code for \"LOW\" but this isn't ever seen on the tree nodes.\n", - "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n" + "\tWARNING: The coloring \"blank\" does not appear as an attr on any tree nodes.\n", + "\tWARNING: Color option \"province_raw\" specifies a hex code for \"NA\" but this isn't ever seen on the tree nodes.\n" ] } ], diff --git a/workflow/notebooks/host.py.ipynb b/workflow/notebooks/host.py.ipynb index 743475be..9afa22c8 100644 --- a/workflow/notebooks/host.py.ipynb +++ b/workflow/notebooks/host.py.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 38, + "execution_count": 1, "id": "copyrighted-nudist", "metadata": {}, "outputs": [], @@ -24,19 +24,26 @@ }, { "cell_type": "code", - "execution_count": 132, + "execution_count": 2, "id": "fabulous-france", "metadata": {}, "outputs": [], "source": [ "project_dir = \"/mnt/c/Users/ktmea/Projects/plague-phylogeography-projects/main/\"\n", "host_path = os.path.join(project_dir, \"iqtree/all/chromosome/full/filter5/filter-taxa/host_proportion.txt\")\n", - "out_dir = os.path.join(project_dir, \"iqtree/all/chromosome/full/filter5/filter-taxa/\")" + "out_dir = os.path.join(project_dir, \"iqtree/all/chromosome/full/filter5/filter-taxa/\")\n", + "\n", + "# ------------------------------------------\n", + "# Plotting\n", + "plt.rcParams['axes.facecolor'] ='white'\n", + "plt.rcParams['savefig.facecolor'] ='white'\n", + "plt.rcParams['savefig.dpi'] = 400\n", + "plt.rcParams['svg.fonttype'] = 'none'" ] }, { "cell_type": "code", - "execution_count": 55, + "execution_count": 3, "id": "married-rough", "metadata": {}, "outputs": [ @@ -180,7 +187,7 @@ "0.PRE 8 100.00000 0.0000 0.00000" ] }, - "execution_count": 55, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -194,10 +201,17 @@ }, { "cell_type": "code", - "execution_count": 151, + "execution_count": 6, "id": "imperial-sending", "metadata": {}, "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "/mnt/c/Users/ktmea/Projects/plague-phylogeography-projects/main/iqtree/all/chromosome/full/filter5/filter-taxa/host_proportion\n" + ] + }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABIEAAALeCAYAAAA9PgHZAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAC4jAAAuIwF4pT92AABrj0lEQVR4nO3dd5hkVZk/8O87PTMwZJgBJIqSTKiICTOGVRQVVDBnMe+aMKyiosiaFfkZVwwYVzGDa1gVWAMY2DWuKKDkzJDDhO7z+6OqtWl7Qs90d1V3fT7PU8/tuvfce986U91d8+1zz63WWgAAAACY2+b1ugAAAAAApp8QCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABsD8XhcAAMx9VTWUpHpdB3Naa60N97oIAOhn1VrrdQ0AwBy1YMGCxyxZsuTVrbWdel0Lc19VnX/FFVe8e8WKFd/qdS0A0I+EQADAtKiq2++6664nfPzjH19+73vf+6b58+f70MG0WblyZZ122mmLDj300IVnn332Aa21M3pdEwD0GyEQADAtttlmm8+99a1vvfcLX/jCq3tdC4Pjox/96BZvetObTrvsssue1utaAKDfmBgaAJgW8+fPv/MjHvGIG3pdB4Pl4Q9/+A3z58/fq9d1AEA/EgIBAFOuqoaGh4c323bbbVf2uhYGy61udauVw8PDm3cnIwcAxhACAQDToaoq5gFips2fP79VVeJudADwD4RAAAAAAANACAQAAAAwAIRAAADr6ZWvfOX2VbVPVe3z+Mc/fpfx2+95z3vuObr9mGOOWTzdtbzyla/c/q1vfes203keAGD2md/rAgAAmDrvf//7t0uS7bfffvmb3vSmy3pdDwDQP4wEAgAAABgAQiAAgB75yU9+stEBBxxw22222ebOCxYsuNvmm29+13333XePT3/601uMb/vGN75x2z333PMOixYt2nvBggV3W7JkyV322WefPV/+8pdvn/z9krTR9hdddNHC0UvQdthhh71m8GUBAH3K5WAAAD3wmc98ZovnPve5t125cuXfbmV+7bXXDp122mmbnnbaaZueeuqpl37sYx+7IEmOPPLIbd72trftOHb/K6+8cv6VV165yQUXXLDB0UcffdFM1w8AzD5GAgEATKGvfe1ri0dH4Iw+fvnLX24yts31119fL3vZy249GgC9/e1vP2/p0qX/+61vfevPm2yyyXCS/Pu///u2p5xyykZJctJJJ22WJBtttNHIb3/729/ffPPN/3PWWWf99ktf+tKZT3va0y5Pkve9730XtdZOHz3H9ttvv7y1dnpr7fQLL7zwdzP1+gGA/iUEAgCYYT/4wQ82ufrqq+cnye1vf/sbX/e6112+5ZZbjjz60Y++7uCDD75ytN3Xvva1LZLkNre5zbIkuemmm+a94Q1v2P7tb3/7Nr/85S83uu9973vje9/73ot78iIAgFlHCAQAMIUe97jHXTk6Amf0cY973OP6sW0uvvjiBaNf77DDDsvHbttll12WjX592WWXLUiSd77znRc96EEPuqaqcsIJJ2z1lre8ZccnP/nJu+288853efSjH32blStXTvfLAgDmACEQAMAM22677VaMfn3hhRcuHLvtnHPO2WD062222WZFkixZsmT4pJNOOuvSSy/99Xe+850//b//9//Oud/97nftyMhITjzxxK0++clPbjlz1QMAs5UQCABghj3kIQ+5YYsttliZJH/84x83ete73rX1NddcM+/b3/72Jscff/zi0XYHHnjg1Uny3ve+d8l73/veJeeff/6Ce93rXjc+85nPvOpe97rX30YXnXfeeX8LkkaPe9VVV83/61//+rcRRwAA7g4GADDDNt1005H3v//95z7vec+77fDwcL32ta/d+bWvfe3OY9s85znPuWy//fa7MUl+8YtfbPzlL395yUTHGhoaao985COvHX2+995733DSSSdtftNNN8277W1ve+ekc4naV7/61XOm8SUBALOAkUAAAD3wrGc96+of/ehHZ+y///5XLVmyZMXQ0FDbZJNNhu95z3te9+///u9/+cQnPnH+aNvHPe5xVz/ykY+8aqeddlq28cYbjwwNDWWLLbZY+YAHPOCab37zm3++z33uc9No249+9KPn7bfffteMjggCABhVrbVe1wAAzDFVNX/bbbc96/zzz79iwQJXJDFzVqxYkZ122mnJpZdeultrTRAGAGMYCQQAAAAwAIRAAAAAAANACAQAAAAwAIRAAAAAAANACAQAAAAwAIRAAAAAAANACAQAAAAwAIRAAAAAAANACAQAAAAwAOb3ugAAYPAMDw9nZGSkpzXMmzcvQ0NDPa0BAGAmCYEAgBk1PDycxzz6gbsvXXrxwl7WsdVW2y3/1gmnnLkuQdAxxxyz+GUve9kup5xyyh8f8IAH3Dh++3777bfbn//850UXXnjh76akWACAKSAEAgBm1MjISJYuvXjhCV+69YpeDcQZHk4e/cRzF46MjBgNBAAMDCEQANATQ0PJgvm9mp6wt5eiAQD0gomhAQCm0Z/+9KeFVbXPMcccs3j8tqra55WvfOX2o89f+cpXbl9V+/z85z9ftP/++9920003vevmm29+1+c973k7rlixIr/5zW82uP/977/7xhtvvPcOO+yw1+GHH77t2OPdeOONdeihh+54u9vd7g6j+971rne93ec+97ktJjr3M57xjJ0/9KEPbXXb2972josWLdp7zz33vMMXv/jFzaelIwCAnjMSCABgHa1cubJWrFjxD+tba+t13Cc96Um3Pfjgg5e+4AUvuPx73/veZh/96EdvtWLFivrxj3+82XOf+9zLX/WqV13y+c9/fvFRRx214+67777smc985tVJctNNN8276qqr5v/Lv/zLJTvttNOK5cuX1/e///3NnvnMZ+569dVXn/PSl770yrHn+eEPf7j5r3/9640OP/zwizbZZJPh9773vbd6+tOfvutd7nKX39/hDndYvl4vAgDoO0IgAIB19JCHPOR2q9q2/fbbr3OI8sxnPvOKI4444tIkOfDAA687+eSTN//MZz6zzXHHHXf2M57xjKuT5FGPetR1P/zhDzf/whe+sHg0BFq8ePHwV77ylXNGj7Ny5co85jGPufbqq68e+vCHP7zN+BBo2bJl80455ZQ/b7nlliNJsu+++964yy673OVzn/vcVv/2b/92ybrWDwD0JyEQAMA6+uAHP/jXvfba6+bx61/xilfsdMkll6zz3c8e97jHXT32+W677XbTn/70p0VPeMITrhldt2DBgtz61rdeduGFF97iPJ/85Ce3/OAHP7jtGWecseimm27626X/G2ywwT8MT9p3332vHQ2AkmSnnXZaudVWW60499xze3rnNgBgegiBAADW0V577XXzRLeI32yzzYYvuWTdB9JsvfXWw2OfL1y4sG244YYjG2200S2CnAULFrTrr7/+b7c3O+6447Z47nOfe9v999//qle84hWXbL/99isWLFjQPvjBD259/PHHLxl/ni233HJ4/LqFCxe2m2++2byRADAHCYEAAKbRokWLRpJk2bJlNXb9JZdcMuX3pv/85z+/eIcddlh+4okn/mXevL/nOO9973uFOgCAu4MBAEynHXfcceUGG2zQfvvb3240dv1//Md/bDHV56qqLFiwYGRsAHTeeefN/8EPfjDl5wIAZh8jgQCAnhgeTpKRNTWbxnPPjHnz5uXAAw+88vjjj1+y6667Ltt7771vPO200zb+6le/utVUn+uRj3zk1d///vd3edrTnrbzIYccctW555678N3vfvd2W2+99Ypzzz13g6k+HwAwuwiBAIAZNW/evGy11XbLH/3E3k4+vNVW2y0fO2JmOn34wx8+P0k++MEP3urGG2+cd+973/u6E0888aw999xzr6k8z8te9rIrL7vssgWf/vSntz7++OOX7Ljjjste/vKXX3LBBRcsfP/737/dVJ4LAJh9qrV/uFEEAMB6qar522677Vnnn3/+FQsWLPiH7cPDwxkZ6c0ooFHz5s3L0NCUT8tDj61YsSI77bTTkksvvXS31trKXtcDAP3ESCAAYMYNDQ0JYAAAZpiJoQEAAAAGgBAIAAAAYAAIgQAAAAAGgBAIAAAAYAAIgQAAAAAGgBAIAAAAYAAIgQAAAAAGgBAIAAAAYADM73UBAMDgGR4ezsjISE9rmDdvXoaGhnpaAwDATBICAQAzanh4OA98xKN3v/jypQt7Wcd2W2+1/JTvnnDmugRBxxxzzOKXvexluyxcuLD97ne/+/0ee+yxfOz2e97znnteddVV888888w/TFnBa+FPf/rTwtvd7nZ7vfGNb7zgrW9966Xjt7/pTW/a9sgjj9zxjDPO+N2ee+65fKJjAABzlxAIAJhRIyMjufjypQt3eNWXV2Rej0bijAznwvcesnBkZGS9RgMtX768XvOa1+zwjW98469TWB0AwLQQAgEAvTFvKPOGevNRZKouRLv//e9/7QknnLDVqaeeesm+++570xQdFgBgWpgYGgBgHb361a++ZPPNN1/5mte8ZsfVtbvxxhvrJS95yQ477LDDXgsWLLjbNttsc+enP/3pO19xxRW3GIa0ww477LXffvvt9pWvfGWzO9zhDrffcMMN73ab29zmjkcfffTi6XoNO+yww16Pf/zjdxm//p73vOee97znPfccfX7iiSduWlX7fPSjH93qRS960Q5bb731nTfaaKO9H/zgB+92/vnnz7/qqqvmPfnJT771lltueZctt9zyLk94whN2ueaaa27xWfPtb3/71ne/+9333Gqrre6yaNGivffYY487HH744dsuW7asxp979913v+Mpp5yy0T777LPnokWL9t5xxx33ev3rX3+r4eHh6eoKAJjzjAQCAFhHm2+++fArX/nKi9/4xjfu9K1vfWvTxzzmMdeNbzMyMpKHP/zhu5166qmbvvSlL73kgQ984PW//vWvF7373e/e/vTTT9/49NNPP2PRokVttP0f//jHjV73utft9IpXvOLi7bbbbuWxxx675BWveMUue+6557L999//+rWpa2RkJCtWrJhw/fo68sgjd9h3332v++hHP3rOX/7yl4VHHHHETgcffPBth4aG2p3udKebPvnJT/719NNPX/SOd7xjx0022WT405/+9Pmj+5599tkbHHLIIUt33XXXZQsXLmz/+7//u+j973//dn/6058WHX/88eeMPc8VV1wx/5nPfOZtX/KSl1yy++67X/TVr351y7e//e07bL/99ite+tKXXrneLwQABpAQCABgPRx22GGXf+xjH9vm9a9//Y4HHHDAH+fNu+VA669//eub/eQnP9ns8MMPv+DII4+8NEkOOuiga3faaaflhx566G0//OEPL37Vq151xWj7q6++ev6Pf/zjM3bfffflSfKIRzziuu23336zz372s1utbQh01FFH7XjUUUetdnTSutpzzz1v+spXvnLO6PMzzjhj0Sc/+cltnvWsZ132sY997IKk8/p+/vOfb/KNb3xjcZK/hUDHHnvsBaNfDw8P5xGPeMR1ixcvXvmyl73sNpdffvn5W2+99d+G+Vx99dXzv/a1r52533773ZgkBx544HWnnnrqpl/60pe2EgIBwLpxORgAwHrYcMMN2+GHH37RH/7wh40+8YlPbDl++w9+8INNk+RFL3rRLYKL5zznOVctWrRo5KSTTtps7Prb3e52N44GQEmy0UYbtV122eXmCy64YIPRdStWrLjFY/wIn2c/+9mXnXLKKX8c/3j2s5992fq+3kc+8pFXj31++9vf/qYkefSjH33N2PV77rnnzddcc83Q2EvCfvrTny568IMfvNsWW2xx1/nz5++zcOHCfV760pfeZnh4OL/73e82HLv/kiVLVowGQGPOdeOFF17Y07vKAcBsZiQQAMB6OvTQQ5cec8wx2x555JE7POMZz7h67LalS5fOHxoaattvv/3KsevnzZuXJUuWrFi6dOkt5gXacsstb9EuSRYuXNhuvvnmeWOe7zN2+wc+8IFz/uVf/uVvIdOOO+64/AEPeMAtApTk74HU+li8ePEtJuVZuHBhS5IlS5asnGj9jTfeOG/zzTcfOfPMMxc+7GEPu91tbnObm//t3/7tvF133XX5okWLRn72s59t/K//+q8733jjjbf44+QWW2zxD5P/LFy4sC1btswfMQFgHQmBAADW07x583LUUUddcNBBB+3xvve9b8nYbVtttdXK4eHhuuiii+aPDYJGRkZyxRVXLLjLXe5yw2TPd8opp/xx7PM99thj2brWvnDhwpHly5fX+PVXXXXV/IkCqXX1pS99aYubbrpp3te//vWz99hjj7+NdPrVr3610VSdAwBYPX9JAQCYAgceeOB197nPfa59z3ves/3YUS0Pe9jDrkuSj3/841uNbX/cccdtedNNN83bb7/9/mEy6TV5wAMecOPYx61udat1vmXWjjvuuPyPf/zjLYKY3/72txv89a9/3WBV+6yLqk7OtOGGG/7t2rWRkZF8+tOfXrLKnQCAKWUkEADAFHnXu951wf3vf/87LF26dP5uu+12c5IceOCB197vfve79m1ve9uO11577dD973//63/9619v9O53v3v729/+9jeOnytopj3lKU+58sUvfvFtnva0p+188MEHX/XXv/514Qc+8IFbbbXVVlM2CihJHvnIR177lre8pR188MG3fdWrXnXJzTffPO9jH/vY1tdee63PowAwQ4wEAgB6Y2Q4I8Mre/LIyDoPnFmt+973vjcdcMABS8eumzdvXr73ve+ddeihh176H//xH0sOPvjg3T/84Q9ve9BBB1353//9338ee3v4XnjBC16w9PDDD7/glFNO2eyJT3zi7scee+w2xxxzzHm77LLLOl9iNpG999775uOOO+7sa665Zv4znvGM3V796lfvvNdee930nve857ypPA8AsGrVWk8/dwAAc1BVzd92223POv/8869YsGDBLbYNDw/ngY949O4XX760p3d52m7rrZaf8t0TzhwaGlpzY2aNFStWZKeddlpy6aWX7tZam9LRTAAw2xl+CwDMqKGhoZzy3RPOHH9b85k2b968CIAAgEEiBAIAZtzQ0JAABgBghpkTCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAACIEAAAAABoAQCAAAAGAAzO91AQDA4BkeHs7IyEhPa5g3b16GhoZ6WgMAwEwSAgEAM2p4eDiPetSjdr/yyisX9rKOxYsXL//2t799piAIABgUQiAAYEaNjIzkyiuvXPihD31oRa8CmOHh4bzkJS9ZODIysk6jgY455pjFL3vZy3ZZuHBh+93vfvf7PfbYY/nY7fe85z33vOqqq+afeeaZfxi7ftmyZbXDDjvc+corr5z/yU9+8i/Pfvazr1rPlwIAsNbMCQQA9MTQ0FDmz5/fk8dUhU/Lly+v17zmNTusbfsvfelLm1955ZXzk+RTn/rUkikpAgBgLQmBAADW0f3vf/9rTzjhhK1OPfXURWvT/lOf+tSSBQsWtPvc5z7X/vSnP93s7LPPXjDdNQIAjBICAQCso1e/+tWXbL755itf85rX7Limtuecc86CH//4x5s/+MEPvvqwww67dGRkJB/72MeMBgIAZowQCABgHW2++ebDr3zlKy/+yU9+stm3vvWtTVfX9qMf/eji4eHhPPvZz77ysY997LXbb7/98i984QtLen2XNABgcAiBAADWw2GHHXb5jjvuuOz1r3/9jqsKdEZGRvLFL35xyTbbbLPi8Y9//DXz5s3LE5/4xCsvvPDChSeeeOJqwyMAgKkiBAIAWA8bbrhhO/zwwy/6wx/+sNEnPvGJLSdq85//+Z+bnnfeeRsccsghV86f37k56wtf+MIrqiqf+MQnXBIGAMwIIRAAwHo69NBDl97hDne48cgjj9xh2bJlNX77scceuyRJDj744KuuuOKKoSuuuGJoq622Gr7b3e52/fe+970tr7jiiqm5XRkAwGoIgQAA1tO8efNy1FFHXXD++edv8L73ve8WI3uuvPLKoe9973tbJMkDH/jA22+99dZ3HX2cfvrpmyxbtqyOPfbYrXpSOAAwUOb3ugAAgLngwAMPvO4+97nPte95z3u232677ZaPrj/22GO3uvnmm+e9+tWvvugBD3jA9eP3e/rTn37bz33uc0te97rXXT6zFQMAg0YIBAD0xPDw8Jw797ve9a4L7n//+99h6dKl83fbbbebk+Szn/3sks0222z4iCOOuGSjjTZq4/d5whOecOWxxx677amnnrpo3333vWlaCgMAiBAIAJhh8+bNy+LFi5e/5CUvWdjLOhYvXrx83rypvTL+vve9700HHHDA0hNOOGGrJPn5z3++6A9/+MNGz3nOcy6bKABKkpe+9KWXH3vssdt+7GMfW7LvvvueP6UFAQCMUa1N+HkEAGCdVdX8bbfd9qzzzz//igULFvzD9uHh4azqduozZd68eRkaMh/zXLNixYrstNNOSy699NLdWmsre10PAPQTI4EAgBk3NDQkgAEAmGHuDgYAAAAwAIRAAAAAAANACAQAAAAwAIRAAMB0aK21rFy5snpdCINl5cqVozc+cfcTABhHCAQATLnW2vDQ0NC1l156qZtQMKMuueSS+UNDQ9e01oZ7XQsA9BshEAAwLVauXPnb7373uxv3ug4Gy/e+972NV65c+bte1wEA/Wh0uCwAwJSqqtvvuuuuJ3z84x9ffu973/um+fPn+9DBtFm5cmWddtppiw499NCFZ5999gGttTN6XRMA9BshEAAwbYaGhh697bbbvnpkZGTnXtfC3Ddv3rzzLr300ncPDw+f0OtaAKAfCYEAgGlXVUNJTBLNdGrmAQKA1RMCAQAAAAwAE0MDAAAADAAhEAAAAMAAEAIBAAAADID5vS6A/lBVlWRJ9+mNvawFAAAA5riNussr2gxO1iwEYtSSJJf1uggAAAAYINskuXymTuZyMAAAAIABYCQQo/52Cdill16ajTfeuJe1AAAAwJx0ww03ZNtttx19OqPTsQiB+Acbb7yxEAgAAADmGJeDAQAAAAwAIRAAAADAABACAQAAAAwAIRAAAADAABACAQAAAAwAIRAAAADAABACAQAAAAwAIRAAAADAABACAQAAAAwAIRBMkaOPPjq77bZbr8sAYIacfPLJedazntXrMmYN/TV5+mxy9BfTzXuMuUAIBOvhhz/8YR7/+MfnxhtvvMX6f//3f8+hhx7ao6oAmC5nnXVWjjnmmKxYseIW60899dQcd9xxPaqqf+mvydNnk6O/mG7eY8w183tdAMxmu+yySy6++OJsvfXWudOd7pSrrroqO++8c5YvX573vve9vS4PgCm21VZb5ZJLLsm+++6bhzzkIbnooovypCc9KTfeeGOOOOKIXpfXd/TX5OmzydFfTDfvMeaaaq31ugb6QFVtnOT6JLn++uuz8cYb97ii2eWHP/xhHv7wh2d4eDhPecpT8vnPf77XJQEwjc4666zst99+ufDCC/ORj3wkL3jBC3pdUl/TX5OnzyZHfzHdvMeYSjfccEM22WST0aebtNZumKlzC4FIIgRaV+eee26e/vSn5/TTT8+d7nSnnHXWWdl4442zYsWKvOc978lTn/rUXpcIwBS6+uqr8773vS/f+c538uAHPzj/+7//my233DI333xz3vzmN+dud7tbr0vsK/pr8vTZ5Ogvppv3GNOhlyGQOYFgPfz5z3/O1ltvncsvvzxPfvKTs+WWW+a8887LW97ylpx88sm9Lg+AKXb55ZdnyZIl+dnPfpb9998/22+/fb70pS/lda97XX73u9/1ury+o78mT59Njv5iunmPMdeYE2gtVNWmSd6Y5K5J9k6yJMlbWmtHTND2bkneleTeSVYm+VGSw1prf5mg7T8neUmS2yS5KMmnk/xba23F+Lb0p4c97GF52MMe9g/rn//85+f5z39+DyoCYDrtvvvu2X333f9h/b777pt99923BxX1N/01efpscvQX0817jLnG5WBroap2SfLrJL9J8uckz8sEIVBV3S7JL7pt35FkwyRvTbJlkru21i4f0/YNSY7stvt+knskeVuS41prM54euBwMAAAApl8vLwczEmjtnJtky9Zaq6ol6YRAE3lrkmVJDmitXZskVXV6kjOTHJbktd11i5McnuTjrbXXd/c9uaoWJHlbVR3dWvu/6Xs5AAAAwKARAq2FthbDpapqfpIDknxmNADq7ntuVZ2U5KB0Q6Akj0hnlNCnxh3mU0mOSnJgknUOgapqmyRbT3K3Ret6PgAAAKD/CYGmzq7pBCm/nWDbb5M8rKo2bK3dnORO3fW3mEmstXZxVV0xZvu6enGSN6/nMWaNkZGRjIyM9LqMGTVv3rzMm7du87qvXLkyK1eunOKK+tv8+fMzf/66/7jzHpuc5cuXZ/ny5VNcUX9buHBhFi5cuM77e49Njv6aHP01eX5XTo732OT5XTk53mOTM4jvr2T9P48NCiHQ1FncXS6dYNvSJJXO3EAXd9suW8V1f0vHHIs1GBkZyROe8IRc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9OP3X5Tk1avZ/9+7yz3W0C5VtXF3AmsAoI8JgQAA1kNr7c9Jnp5keZI7Jvl1Vb22qnYbbVNVQ1W1d1W9Nclf8vfLvFZ33Ovz99E476uqB4+OyKmqOyX5z3TuAHbDKg7x1ST/M/p1VT2+e/lYqur2Sb6Tv08ePdH5v5nk692n76iqj4wd6VRVC6vqXlX1ziTnru5YAEB/qNZWN1cgAABro6rum+TTSXYbs3p5OqOEtsjf//jWkvxHkme21lZ0R+mclCSttVtcIlZV+yQ5JX+/89ey7jE3TbIyncmij0zn9uzPbq19etz+t01ycpKdxux/czqjkJYnOTjJN7vb9mutnTxu/42SfCLJk8asvqG77+a55R8Ud2ytre5OZABAjxkJBAAwBVprP01yuyRPTvL5JGelE7hsmmRpkp+kc/nW7VtrT2mtrViLY56e5J5JvpzObeHnJbmu+/w+rbXPrmH/vyS5a5L3JflrOncQuznJV7r7f2sN+9/YWntyOvMKfTadUUzzkmySzsTTP0rymiS7C4AAoP8ZCQQAAAAwAIwEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgAQiAAAACAASAEAgAAABgA/x+cyBq6dUU/ngAAAABJRU5ErkJggg==\n", @@ -257,6 +271,7 @@ "ax.text(s=\"*\", x=0, y=100)\n", "\n", "out_path = os.path.join(out_dir, \"host_proportion\")\n", + "print(out_path)\n", "plt.savefig(out_path + \".png\", dpi=DPI, bbox_inches = \"tight\", facecolor=\"white\")\n", "plt.savefig(out_path + \".svg\", dpi=DPI, bbox_inches = \"tight\")" ] diff --git a/workflow/scripts/project_unload.sh b/workflow/scripts/project_unload.sh index 4cc2b66c..532f2666 100755 --- a/workflow/scripts/project_unload.sh +++ b/workflow/scripts/project_unload.sh @@ -42,7 +42,7 @@ do if [[ $keep == "true" ]]; then echo -e "\tBacking up: ${RESULTS_DIR}/$dirname/"; echo -e "\t origin: ${RESULTS_DIR}/$dirname/"; - echo -e "\t dest: ${RESULTS_DIR}/$dirname/"; + echo -e "\t dest: ${BACKUP_DIR}/$dirname/"; else continue fi