diff --git a/src/HHbbVV/postprocessing/GetEventDisplayJets.ipynb b/src/HHbbVV/postprocessing/GetEventDisplayJets.ipynb new file mode 100644 index 00000000..22afd99c --- /dev/null +++ b/src/HHbbVV/postprocessing/GetEventDisplayJets.ipynb @@ -0,0 +1,1282 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [], + "source": [ + "import uproot\n", + "from tqdm import tqdm\n", + "from coffea import nanoevents\n", + "from coffea.nanoevents.methods.base import NanoEventsArray\n", + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pathlib import Path" + ] + }, + { + "cell_type": "code", + "execution_count": 100, + "metadata": {}, + "outputs": [], + "source": [ + "# rundir = Path(\"/eos/uscms/store/user/lpcpfnano/cmantill/v2_3/2016/JetHT2016/JetHT/JetHT_Run2016B_ver2_HIPM/220701_193532/0000/\")\n", + "rundir = Path(\n", + " \"/eos/uscms/store/user/lpcpfnano/cmantill/v2_3/2016/JetHT2016/JetHT/JetHT_Run2016E_HIPM/220701_193836/0000/\"\n", + ")\n", + "files = [f for f in rundir.iterdir() if f.is_file()]" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": {}, + "outputs": [], + "source": [ + "event_ids = [310609526] # , 1017592313]\n", + "lumi_blocks = [159] # , 542]\n", + "run_nums = [274388] # , 277070]" + ] + }, + { + "cell_type": "code", + "execution_count": 101, + "metadata": {}, + "outputs": [], + "source": [ + "event_ids = [1017592313]\n", + "lumi_blocks = [542]\n", + "run_nums = [277070]" + ] + }, + { + "cell_type": "code", + "execution_count": 102, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + " 8%|▊ | 54/675 [00:04<00:50, 12.41it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Lumi block match in /eos/uscms/store/user/lpcpfnano/cmantill/v2_3/2016/JetHT2016/JetHT/JetHT_Run2016E_HIPM/220701_193836/0000/nano_data2016_1-20.root!\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + " 9%|▊ | 58/675 [00:07<03:05, 3.33it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1017592313\n", + "Found event 1017592313 in /eos/uscms/store/user/lpcpfnano/cmantill/v2_3/2016/JetHT2016/JetHT/JetHT_Run2016E_HIPM/220701_193836/0000/nano_data2016_1-20.root!\n", + "31658\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + " 30%|██▉ | 202/675 [00:20<00:45, 10.47it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Lumi block match in /eos/uscms/store/user/lpcpfnano/cmantill/v2_3/2016/JetHT2016/JetHT/JetHT_Run2016E_HIPM/220701_193836/0000/nano_data2016_16.root!\n", + "1017592313\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + " 73%|███████▎ | 491/675 [00:47<00:17, 10.26it/s]\n" + ] + }, + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn [102], line 2\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m f \u001b[38;5;129;01min\u001b[39;00m tqdm(files):\n\u001b[0;32m----> 2\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[43muproot\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mopen\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43mf\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;132;43;01m{\u001b[39;49;00m\u001b[43mf\u001b[49m\u001b[38;5;132;43;01m}\u001b[39;49;00m\u001b[38;5;124;43m:Runs\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m file:\n\u001b[1;32m 3\u001b[0m runs \u001b[38;5;241m=\u001b[39m file[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mrun\u001b[39m\u001b[38;5;124m\"\u001b[39m]\u001b[38;5;241m.\u001b[39marrays()\u001b[38;5;241m.\u001b[39mrun\u001b[38;5;241m.\u001b[39mto_numpy()\n\u001b[1;32m 5\u001b[0m runmatch \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mFalse\u001b[39;00m\n", + "File \u001b[0;32m/uscms_data/d3/rkansal/mambaforge/envs/python39/lib/python3.9/site-packages/uproot/reading.py:154\u001b[0m, in \u001b[0;36mopen\u001b[0;34m(path, object_cache, array_cache, custom_classes, decompression_executor, interpretation_executor, **options)\u001b[0m\n\u001b[1;32m 152\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m file\u001b[38;5;241m.\u001b[39mroot_directory\n\u001b[1;32m 153\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m--> 154\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mfile\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mroot_directory\u001b[49m[object_path]\n", + "File \u001b[0;32m/uscms_data/d3/rkansal/mambaforge/envs/python39/lib/python3.9/site-packages/uproot/reading.py:784\u001b[0m, in \u001b[0;36mReadOnlyFile.root_directory\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 778\u001b[0m \u001b[38;5;129m@property\u001b[39m\n\u001b[1;32m 779\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mroot_directory\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[1;32m 780\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m 781\u001b[0m \u001b[38;5;124;03m The root ``TDirectory`` of the file\u001b[39;00m\n\u001b[1;32m 782\u001b[0m \u001b[38;5;124;03m (:doc:`uproot.reading.ReadOnlyDirectory`).\u001b[39;00m\n\u001b[1;32m 783\u001b[0m \u001b[38;5;124;03m \"\"\"\u001b[39;00m\n\u001b[0;32m--> 784\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mReadOnlyDirectory\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 785\u001b[0m \u001b[43m \u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 786\u001b[0m \u001b[43m \u001b[49m\u001b[43muproot\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msource\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcursor\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mCursor\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_fBEGIN\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m+\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_fNbytesName\u001b[49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 787\u001b[0m \u001b[43m \u001b[49m\u001b[43m{\u001b[49m\u001b[43m}\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 788\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m,\u001b[49m\n\u001b[1;32m 789\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m,\u001b[49m\n\u001b[1;32m 790\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m/uscms_data/d3/rkansal/mambaforge/envs/python39/lib/python3.9/site-packages/uproot/reading.py:1433\u001b[0m, in \u001b[0;36mReadOnlyDirectory.__init__\u001b[0;34m(self, path, cursor, context, file, parent)\u001b[0m\n\u001b[1;32m 1425\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhook_before_header_key(\n\u001b[1;32m 1426\u001b[0m chunk\u001b[38;5;241m=\u001b[39mchunk,\n\u001b[1;32m 1427\u001b[0m cursor\u001b[38;5;241m=\u001b[39mcursor,\n\u001b[1;32m 1428\u001b[0m keys_chunk\u001b[38;5;241m=\u001b[39mkeys_chunk,\n\u001b[1;32m 1429\u001b[0m keys_cursor\u001b[38;5;241m=\u001b[39mkeys_cursor,\n\u001b[1;32m 1430\u001b[0m )\n\u001b[1;32m 1432\u001b[0m \u001b[38;5;66;03m# header_key is never used, but we do need to seek past it\u001b[39;00m\n\u001b[0;32m-> 1433\u001b[0m \u001b[43mReadOnlyKey\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkeys_chunk\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mkeys_cursor\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43m{\u001b[49m\u001b[43m}\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mfile\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mread_strings\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mTrue\u001b[39;49;00m\u001b[43m)\u001b[49m\n\u001b[1;32m 1435\u001b[0m num_keys \u001b[38;5;241m=\u001b[39m keys_cursor\u001b[38;5;241m.\u001b[39mfield(\n\u001b[1;32m 1436\u001b[0m keys_chunk, _directory_format_num_keys, context\n\u001b[1;32m 1437\u001b[0m )\n\u001b[1;32m 1439\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhook_before_keys(\n\u001b[1;32m 1440\u001b[0m chunk\u001b[38;5;241m=\u001b[39mchunk,\n\u001b[1;32m 1441\u001b[0m cursor\u001b[38;5;241m=\u001b[39mcursor,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 1444\u001b[0m num_keys\u001b[38;5;241m=\u001b[39mnum_keys,\n\u001b[1;32m 1445\u001b[0m )\n", + "File \u001b[0;32m/uscms_data/d3/rkansal/mambaforge/envs/python39/lib/python3.9/site-packages/uproot/reading.py:2271\u001b[0m, in \u001b[0;36mReadOnlyKey.__init__\u001b[0;34m(self, chunk, cursor, context, file, parent, read_strings)\u001b[0m\n\u001b[1;32m 2251\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_parent \u001b[38;5;241m=\u001b[39m parent\n\u001b[1;32m 2253\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhook_before_interpret(\n\u001b[1;32m 2254\u001b[0m chunk\u001b[38;5;241m=\u001b[39mchunk,\n\u001b[1;32m 2255\u001b[0m cursor\u001b[38;5;241m=\u001b[39mcursor,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 2259\u001b[0m read_strings\u001b[38;5;241m=\u001b[39mread_strings,\n\u001b[1;32m 2260\u001b[0m )\n\u001b[1;32m 2262\u001b[0m (\n\u001b[1;32m 2263\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fNbytes,\n\u001b[1;32m 2264\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fVersion,\n\u001b[1;32m 2265\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fObjlen,\n\u001b[1;32m 2266\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fDatime,\n\u001b[1;32m 2267\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fKeylen,\n\u001b[1;32m 2268\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fCycle,\n\u001b[1;32m 2269\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fSeekKey,\n\u001b[1;32m 2270\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fSeekPdir,\n\u001b[0;32m-> 2271\u001b[0m ) \u001b[38;5;241m=\u001b[39m \u001b[43mcursor\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfields\u001b[49m\u001b[43m(\u001b[49m\u001b[43mchunk\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43m_key_format_small\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mcontext\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mmove\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m)\u001b[49m\n\u001b[1;32m 2273\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mis_64bit:\n\u001b[1;32m 2274\u001b[0m (\n\u001b[1;32m 2275\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fNbytes,\n\u001b[1;32m 2276\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fVersion,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 2282\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_fSeekPdir,\n\u001b[1;32m 2283\u001b[0m ) \u001b[38;5;241m=\u001b[39m cursor\u001b[38;5;241m.\u001b[39mfields(chunk, _key_format_big, context)\n", + "File \u001b[0;32m/uscms_data/d3/rkansal/mambaforge/envs/python39/lib/python3.9/site-packages/uproot/source/cursor.py:197\u001b[0m, in \u001b[0;36mCursor.fields\u001b[0;34m(self, chunk, format, context, move)\u001b[0m\n\u001b[1;32m 195\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m move:\n\u001b[1;32m 196\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_index \u001b[38;5;241m=\u001b[39m stop\n\u001b[0;32m--> 197\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mformat\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43munpack\u001b[49m\u001b[43m(\u001b[49m\u001b[43mchunk\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[43mstart\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mstop\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mcontext\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "for f in tqdm(files):\n", + " with uproot.open(f\"{f}:Runs\") as file:\n", + " runs = file[\"run\"].arrays().run.to_numpy()\n", + "\n", + " runmatch = False\n", + " for run_num in run_nums:\n", + " if np.isin(run_num, runs):\n", + " runmatch = True\n", + "\n", + " if not runmatch:\n", + " continue\n", + "\n", + " with uproot.open(f\"{f}:LuminosityBlocks\") as file:\n", + " lbs = file[\"luminosityBlock\"].arrays().luminosityBlock.to_numpy()\n", + "\n", + " lumimatch = False\n", + " for lb in lumi_blocks:\n", + " if np.isin(lb, lbs):\n", + " lumimatch = True\n", + "\n", + " if not lumimatch:\n", + " continue\n", + "\n", + " print(f\"Lumi block match in {f}!\")\n", + "\n", + " with uproot.open(f\"{f}:Events/event\") as file:\n", + " events = file.arrays().event.to_numpy()\n", + "\n", + " # print(events)\n", + " # print(f)\n", + "\n", + " eventmatch = False\n", + " for event_id in event_ids:\n", + " print(event_id)\n", + " if np.isin(event_id, events):\n", + " eventmatch = True\n", + " print(f\"Found event {event_id} in {f}!\")\n", + " idx = np.where(events == event_id)[0][0]\n", + " print(idx)\n", + " break\n", + "\n", + " if eventmatch:\n", + " break" + ] + }, + { + "cell_type": "code", + "execution_count": 103, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/uscms/home/rkansal/.local/lib/python3.9/site-packages/coffea/nanoevents/mapping/uproot.py:86: UserWarning: Found duplicate branch FatJetAK15SubJet_nBHadrons in , taking first instance\n", + " warnings.warn(\n", + "/uscms/home/rkansal/.local/lib/python3.9/site-packages/coffea/nanoevents/mapping/uproot.py:86: UserWarning: Found duplicate branch FatJetAK15SubJet_nCHadrons in , taking first instance\n", + " warnings.warn(\n", + "/uscms/home/rkansal/.local/lib/python3.9/site-packages/coffea/nanoevents/mapping/uproot.py:86: UserWarning: Found duplicate branch FatJetAK15_nBHadrons in , taking first instance\n", + " warnings.warn(\n", + "/uscms/home/rkansal/.local/lib/python3.9/site-packages/coffea/nanoevents/mapping/uproot.py:86: UserWarning: Found duplicate branch FatJetAK15_nCHadrons in , taking first instance\n", + " warnings.warn(\n", + "/uscms/home/rkansal/.local/lib/python3.9/site-packages/coffea/nanoevents/mapping/uproot.py:86: UserWarning: Found duplicate branch FatJet_btagDDBvLV2 in , taking first instance\n", + " warnings.warn(\n", + "/uscms/home/rkansal/.local/lib/python3.9/site-packages/coffea/nanoevents/mapping/uproot.py:86: UserWarning: Found duplicate branch FatJet_btagDDCvBV2 in , taking first instance\n", + " warnings.warn(\n", + "/uscms/home/rkansal/.local/lib/python3.9/site-packages/coffea/nanoevents/mapping/uproot.py:86: UserWarning: Found duplicate branch FatJet_btagDDCvLV2 in , taking first instance\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "events = nanoevents.NanoEventsFactory.from_root(\n", + " \"/eos/uscms/store/user/lpcpfnano/cmantill/v2_3/2016/JetHT2016/JetHT/JetHT_Run2016E_HIPM/220701_193836/0000/nano_data2016_1-20.root\",\n", + " schemaclass=nanoevents.NanoAODSchema,\n", + ").events()" + ] + }, + { + "cell_type": "code", + "execution_count": 104, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[665.5 584. ]\n", + "[ 1.0561523 1.2133789 1.6704102 2.6201172 -3.899414 -5.013672\n", + " -2.244629 ]\n" + ] + } + ], + "source": [ + "print(events.FatJet[idx].pt.to_numpy())\n", + "print(events.Jet[idx].eta.to_numpy())" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['run',\n", + " 'luminosityBlock',\n", + " 'event',\n", + " 'nFatJetAK15SubJet',\n", + " 'FatJetAK15SubJet_area',\n", + " 'FatJetAK15SubJet_btagCSVV2',\n", + " 'FatJetAK15SubJet_btagDeepB',\n", + " 'FatJetAK15SubJet_btagJP',\n", + " 'FatJetAK15SubJet_eta',\n", + " 'FatJetAK15SubJet_mass',\n", + " 'FatJetAK15SubJet_phi',\n", + " 'FatJetAK15SubJet_pt',\n", + " 'FatJetAK15SubJet_rawFactor',\n", + " 'FatJetAK15SubJet_nBHadrons',\n", + " 'FatJetAK15SubJet_nCHadrons',\n", + " 'nFatJetAK15',\n", + " 'FatJetAK15_ParticleNetMD_probQCD',\n", + " 'FatJetAK15_ParticleNetMD_probXbb',\n", + " 'FatJetAK15_ParticleNetMD_probXcc',\n", + " 'FatJetAK15_ParticleNetMD_probXqq',\n", + " 'FatJetAK15_ParticleNet_probHbb',\n", + " 'FatJetAK15_ParticleNet_probHcc',\n", + " 'FatJetAK15_ParticleNet_probHqqqq',\n", + " 'FatJetAK15_ParticleNet_probQCDb',\n", + " 'FatJetAK15_ParticleNet_probQCDbb',\n", + " 'FatJetAK15_ParticleNet_probQCDc',\n", + " 'FatJetAK15_ParticleNet_probQCDcc',\n", + " 'FatJetAK15_ParticleNet_probQCDothers',\n", + " 'FatJetAK15_ParticleNet_probTbc',\n", + " 'FatJetAK15_ParticleNet_probTbcq',\n", + " 'FatJetAK15_ParticleNet_probTbel',\n", + " 'FatJetAK15_ParticleNet_probTbmu',\n", + " 'FatJetAK15_ParticleNet_probTbq',\n", + " 'FatJetAK15_ParticleNet_probTbqq',\n", + " 'FatJetAK15_ParticleNet_probTbta',\n", + " 'FatJetAK15_ParticleNet_probWcq',\n", + " 'FatJetAK15_ParticleNet_probWqq',\n", + " 'FatJetAK15_ParticleNet_probZbb',\n", + " 'FatJetAK15_ParticleNet_probZcc',\n", + " 'FatJetAK15_ParticleNet_probZqq',\n", + " 'FatJetAK15_area',\n", + " 'FatJetAK15_btagCSVV2',\n", + " 'FatJetAK15_btagDeepB',\n", + " 'FatJetAK15_btagJP',\n", + " 'FatJetAK15_eta',\n", + " 'FatJetAK15_mass',\n", + " 'FatJetAK15_msoftdrop',\n", + " 'FatJetAK15_n2b1',\n", + " 'FatJetAK15_n3b1',\n", + " 'FatJetAK15_phi',\n", + " 'FatJetAK15_pt',\n", + " 'FatJetAK15_rawFactor',\n", + " 'FatJetAK15_tau1',\n", + " 'FatJetAK15_tau2',\n", + " 'FatJetAK15_tau3',\n", + " 'FatJetAK15_jetId',\n", + " 'FatJetAK15_nBHadrons',\n", + " 'FatJetAK15_nCHadrons',\n", + " 'FatJetAK15_nPFConstituents',\n", + " 'FatJetAK15_subJetIdx1',\n", + " 'FatJetAK15_subJetIdx2',\n", + " 'nboostedTau',\n", + " 'boostedTau_chargedIso',\n", + " 'boostedTau_eta',\n", + " 'boostedTau_leadTkDeltaEta',\n", + " 'boostedTau_leadTkDeltaPhi',\n", + " 'boostedTau_leadTkPtOverTauPt',\n", + " 'boostedTau_mass',\n", + " 'boostedTau_neutralIso',\n", + " 'boostedTau_phi',\n", + " 'boostedTau_photonsOutsideSignalCone',\n", + " 'boostedTau_pt',\n", + " 'boostedTau_puCorr',\n", + " 'boostedTau_rawAntiEle2018',\n", + " 'boostedTau_rawIso',\n", + " 'boostedTau_rawIsodR03',\n", + " 'boostedTau_rawMVAnewDM2017v2',\n", + " 'boostedTau_rawMVAoldDM2017v2',\n", + " 'boostedTau_rawMVAoldDMdR032017v2',\n", + " 'boostedTau_charge',\n", + " 'boostedTau_decayMode',\n", + " 'boostedTau_jetIdx',\n", + " 'boostedTau_rawAntiEleCat2018',\n", + " 'boostedTau_idAntiEle2018',\n", + " 'boostedTau_idAntiMu',\n", + " 'boostedTau_idMVAnewDM2017v2',\n", + " 'boostedTau_idMVAoldDM2017v2',\n", + " 'boostedTau_idMVAoldDMdR032017v2',\n", + " 'CaloMET_phi',\n", + " 'CaloMET_pt',\n", + " 'CaloMET_sumEt',\n", + " 'ChsMET_phi',\n", + " 'ChsMET_pt',\n", + " 'ChsMET_sumEt',\n", + " 'nCorrT1METJet',\n", + " 'CorrT1METJet_area',\n", + " 'CorrT1METJet_eta',\n", + " 'CorrT1METJet_muonSubtrFactor',\n", + " 'CorrT1METJet_phi',\n", + " 'CorrT1METJet_rawPt',\n", + " 'nFatJetAK15PFCands',\n", + " 'FatJetAK15PFCands_pt',\n", + " 'FatJetAK15PFCands_btagEtaRel',\n", + " 'FatJetAK15PFCands_btagPtRatio',\n", + " 'FatJetAK15PFCands_btagPParRatio',\n", + " 'FatJetAK15PFCands_btagSip3dVal',\n", + " 'FatJetAK15PFCands_btagSip3dSig',\n", + " 'FatJetAK15PFCands_btagJetDistVal',\n", + " 'FatJetAK15PFCands_pFCandsIdx',\n", + " 'FatJetAK15PFCands_jetIdx',\n", + " 'nJetSVsAK15',\n", + " 'JetSVsAK15_mass',\n", + " 'JetSVsAK15_pt',\n", + " 'JetSVsAK15_ntracks',\n", + " 'JetSVsAK15_chi2',\n", + " 'JetSVsAK15_normchi2',\n", + " 'JetSVsAK15_dxy',\n", + " 'JetSVsAK15_dxysig',\n", + " 'JetSVsAK15_d3d',\n", + " 'JetSVsAK15_d3dsig',\n", + " 'JetSVsAK15_costhetasvpv',\n", + " 'JetSVsAK15_phirel',\n", + " 'JetSVsAK15_ptrel',\n", + " 'JetSVsAK15_deltaR',\n", + " 'JetSVsAK15_enration',\n", + " 'JetSVsAK15_jetIdx',\n", + " 'JetSVsAK15_sVIdx',\n", + " 'nFatJetPFCands',\n", + " 'FatJetPFCands_pt',\n", + " 'FatJetPFCands_btagEtaRel',\n", + " 'FatJetPFCands_btagPtRatio',\n", + " 'FatJetPFCands_btagPParRatio',\n", + " 'FatJetPFCands_btagSip3dVal',\n", + " 'FatJetPFCands_btagSip3dSig',\n", + " 'FatJetPFCands_btagJetDistVal',\n", + " 'FatJetPFCands_pFCandsIdx',\n", + " 'FatJetPFCands_jetIdx',\n", + " 'nFatJetSVs',\n", + " 'FatJetSVs_mass',\n", + " 'FatJetSVs_pt',\n", + " 'FatJetSVs_ntracks',\n", + " 'FatJetSVs_chi2',\n", + " 'FatJetSVs_normchi2',\n", + " 'FatJetSVs_dxy',\n", + " 'FatJetSVs_dxysig',\n", + " 'FatJetSVs_d3d',\n", + " 'FatJetSVs_d3dsig',\n", + " 'FatJetSVs_costhetasvpv',\n", + " 'FatJetSVs_phirel',\n", + " 'FatJetSVs_ptrel',\n", + " 'FatJetSVs_deltaR',\n", + " 'FatJetSVs_enration',\n", + " 'FatJetSVs_jetIdx',\n", + " 'FatJetSVs_sVIdx',\n", + " 'nPFCands',\n", + " 'PFCands_d0',\n", + " 'PFCands_d0Err',\n", + " 'PFCands_dz',\n", + " 'PFCands_dzErr',\n", + " 'PFCands_eta',\n", + " 'PFCands_mass',\n", + " 'PFCands_phi',\n", + " 'PFCands_pt',\n", + " 'PFCands_puppiWeight',\n", + " 'PFCands_puppiWeightNoLep',\n", + " 'PFCands_trkChi2',\n", + " 'PFCands_vtxChi2',\n", + " 'PFCands_charge',\n", + " 'PFCands_lostInnerHits',\n", + " 'PFCands_pdgId',\n", + " 'PFCands_pvAssocQuality',\n", + " 'PFCands_trkQuality',\n", + " 'DeepMETResolutionTune_phi',\n", + " 'DeepMETResolutionTune_pt',\n", + " 'DeepMETResponseTune_phi',\n", + " 'DeepMETResponseTune_pt',\n", + " 'nElectron',\n", + " 'Electron_dEscaleDown',\n", + " 'Electron_dEscaleUp',\n", + " 'Electron_dEsigmaDown',\n", + " 'Electron_dEsigmaUp',\n", + " 'Electron_deltaEtaSC',\n", + " 'Electron_dr03EcalRecHitSumEt',\n", + " 'Electron_dr03HcalDepth1TowerSumEt',\n", + " 'Electron_dr03TkSumPt',\n", + " 'Electron_dr03TkSumPtHEEP',\n", + " 'Electron_dxy',\n", + " 'Electron_dxyErr',\n", + " 'Electron_dz',\n", + " 'Electron_dzErr',\n", + " 'Electron_eCorr',\n", + " 'Electron_eInvMinusPInv',\n", + " 'Electron_energyErr',\n", + " 'Electron_eta',\n", + " 'Electron_hoe',\n", + " 'Electron_ip3d',\n", + " 'Electron_jetPtRelv2',\n", + " 'Electron_jetRelIso',\n", + " 'Electron_mass',\n", + " 'Electron_miniPFRelIso_all',\n", + " 'Electron_miniPFRelIso_chg',\n", + " 'Electron_mvaFall17V2Iso',\n", + " 'Electron_mvaFall17V2noIso',\n", + " 'Electron_pfRelIso03_all',\n", + " 'Electron_pfRelIso03_chg',\n", + " 'Electron_phi',\n", + " 'Electron_pt',\n", + " 'Electron_r9',\n", + " 'Electron_scEtOverPt',\n", + " 'Electron_sieie',\n", + " 'Electron_sip3d',\n", + " 'Electron_mvaTTH',\n", + " 'Electron_charge',\n", + " 'Electron_cutBased',\n", + " 'Electron_jetIdx',\n", + " 'Electron_pdgId',\n", + " 'Electron_photonIdx',\n", + " 'Electron_tightCharge',\n", + " 'Electron_vidNestedWPBitmap',\n", + " 'Electron_vidNestedWPBitmapHEEP',\n", + " 'Electron_convVeto',\n", + " 'Electron_cutBased_HEEP',\n", + " 'Electron_isPFcand',\n", + " 'Electron_jetNDauCharged',\n", + " 'Electron_lostHits',\n", + " 'Electron_mvaFall17V2Iso_WP80',\n", + " 'Electron_mvaFall17V2Iso_WP90',\n", + " 'Electron_mvaFall17V2Iso_WPL',\n", + " 'Electron_mvaFall17V2noIso_WP80',\n", + " 'Electron_mvaFall17V2noIso_WP90',\n", + " 'Electron_mvaFall17V2noIso_WPL',\n", + " 'Electron_seedGain',\n", + " 'nFatJet',\n", + " 'FatJet_area',\n", + " 'FatJet_btagCSVV2',\n", + " 'FatJet_btagDDBvLV2',\n", + " 'FatJet_btagDDCvBV2',\n", + " 'FatJet_btagDDCvLV2',\n", + " 'FatJet_btagDeepB',\n", + " 'FatJet_btagHbb',\n", + " 'FatJet_deepTagMD_H4qvsQCD',\n", + " 'FatJet_deepTagMD_HbbvsQCD',\n", + " 'FatJet_deepTagMD_TvsQCD',\n", + " 'FatJet_deepTagMD_WvsQCD',\n", + " 'FatJet_deepTagMD_ZHbbvsQCD',\n", + " 'FatJet_deepTagMD_ZHccvsQCD',\n", + " 'FatJet_deepTagMD_ZbbvsQCD',\n", + " 'FatJet_deepTagMD_ZvsQCD',\n", + " 'FatJet_deepTagMD_bbvsLight',\n", + " 'FatJet_deepTagMD_ccvsLight',\n", + " 'FatJet_deepTag_H',\n", + " 'FatJet_deepTag_QCD',\n", + " 'FatJet_deepTag_QCDothers',\n", + " 'FatJet_deepTag_TvsQCD',\n", + " 'FatJet_deepTag_WvsQCD',\n", + " 'FatJet_deepTag_ZvsQCD',\n", + " 'FatJet_eta',\n", + " 'FatJet_mass',\n", + " 'FatJet_msoftdrop',\n", + " 'FatJet_n2b1',\n", + " 'FatJet_n3b1',\n", + " 'FatJet_particleNetMD_QCD',\n", + " 'FatJet_particleNetMD_Xbb',\n", + " 'FatJet_particleNetMD_Xcc',\n", + " 'FatJet_particleNetMD_Xqq',\n", + " 'FatJet_particleNet_H4qvsQCD',\n", + " 'FatJet_particleNet_HbbvsQCD',\n", + " 'FatJet_particleNet_HccvsQCD',\n", + " 'FatJet_particleNet_QCD',\n", + " 'FatJet_particleNet_TvsQCD',\n", + " 'FatJet_particleNet_WvsQCD',\n", + " 'FatJet_particleNet_ZvsQCD',\n", + " 'FatJet_particleNet_mass',\n", + " 'FatJet_phi',\n", + " 'FatJet_pt',\n", + " 'FatJet_rawFactor',\n", + " 'FatJet_tau1',\n", + " 'FatJet_tau2',\n", + " 'FatJet_tau3',\n", + " 'FatJet_tau4',\n", + " 'FatJet_lsf3',\n", + " 'FatJet_jetId',\n", + " 'FatJet_subJetIdx1',\n", + " 'FatJet_subJetIdx2',\n", + " 'FatJet_electronIdx3SJ',\n", + " 'FatJet_muonIdx3SJ',\n", + " 'FatJet_nConstituents',\n", + " 'nFsrPhoton',\n", + " 'FsrPhoton_dROverEt2',\n", + " 'FsrPhoton_eta',\n", + " 'FsrPhoton_phi',\n", + " 'FsrPhoton_pt',\n", + " 'FsrPhoton_relIso03',\n", + " 'FsrPhoton_muonIdx',\n", + " 'nIsoTrack',\n", + " 'IsoTrack_dxy',\n", + " 'IsoTrack_dz',\n", + " 'IsoTrack_eta',\n", + " 'IsoTrack_pfRelIso03_all',\n", + " 'IsoTrack_pfRelIso03_chg',\n", + " 'IsoTrack_phi',\n", + " 'IsoTrack_pt',\n", + " 'IsoTrack_miniPFRelIso_all',\n", + " 'IsoTrack_miniPFRelIso_chg',\n", + " 'IsoTrack_charge',\n", + " 'IsoTrack_fromPV',\n", + " 'IsoTrack_pdgId',\n", + " 'IsoTrack_isHighPurityTrack',\n", + " 'IsoTrack_isPFcand',\n", + " 'IsoTrack_isFromLostTrack',\n", + " 'nJet',\n", + " 'Jet_area',\n", + " 'Jet_btagCSVV2',\n", + " 'Jet_btagDeepB',\n", + " 'Jet_btagDeepCvB',\n", + " 'Jet_btagDeepCvL',\n", + " 'Jet_btagDeepFlavB',\n", + " 'Jet_btagDeepFlavCvB',\n", + " 'Jet_btagDeepFlavCvL',\n", + " 'Jet_btagDeepFlavQG',\n", + " 'Jet_chEmEF',\n", + " 'Jet_chFPV0EF',\n", + " 'Jet_chHEF',\n", + " 'Jet_eta',\n", + " 'Jet_hfsigmaEtaEta',\n", + " 'Jet_hfsigmaPhiPhi',\n", + " 'Jet_mass',\n", + " 'Jet_muEF',\n", + " 'Jet_muonSubtrFactor',\n", + " 'Jet_neEmEF',\n", + " 'Jet_neHEF',\n", + " 'Jet_phi',\n", + " 'Jet_pt',\n", + " 'Jet_puIdDisc',\n", + " 'Jet_qgl',\n", + " 'Jet_rawFactor',\n", + " 'Jet_bRegCorr',\n", + " 'Jet_bRegRes',\n", + " 'Jet_cRegCorr',\n", + " 'Jet_cRegRes',\n", + " 'Jet_electronIdx1',\n", + " 'Jet_electronIdx2',\n", + " 'Jet_hfadjacentEtaStripsSize',\n", + " 'Jet_hfcentralEtaStripSize',\n", + " 'Jet_jetId',\n", + " 'Jet_muonIdx1',\n", + " 'Jet_muonIdx2',\n", + " 'Jet_nElectrons',\n", + " 'Jet_nMuons',\n", + " 'Jet_puId',\n", + " 'Jet_nConstituents',\n", + " 'L1PreFiringWeight_Dn',\n", + " 'L1PreFiringWeight_ECAL_Dn',\n", + " 'L1PreFiringWeight_ECAL_Nom',\n", + " 'L1PreFiringWeight_ECAL_Up',\n", + " 'L1PreFiringWeight_Muon_Nom',\n", + " 'L1PreFiringWeight_Muon_StatDn',\n", + " 'L1PreFiringWeight_Muon_StatUp',\n", + " 'L1PreFiringWeight_Muon_SystDn',\n", + " 'L1PreFiringWeight_Muon_SystUp',\n", + " 'L1PreFiringWeight_Nom',\n", + " 'L1PreFiringWeight_Up',\n", + " 'nLowPtElectron',\n", + " 'LowPtElectron_ID',\n", + " 'LowPtElectron_convVtxRadius',\n", + " 'LowPtElectron_deltaEtaSC',\n", + " 'LowPtElectron_dxy',\n", + " 'LowPtElectron_dxyErr',\n", + " 'LowPtElectron_dz',\n", + " 'LowPtElectron_dzErr',\n", + " 'LowPtElectron_eInvMinusPInv',\n", + " 'LowPtElectron_embeddedID',\n", + " 'LowPtElectron_energyErr',\n", + " 'LowPtElectron_eta',\n", + " 'LowPtElectron_hoe',\n", + " 'LowPtElectron_mass',\n", + " 'LowPtElectron_miniPFRelIso_all',\n", + " 'LowPtElectron_miniPFRelIso_chg',\n", + " 'LowPtElectron_phi',\n", + " 'LowPtElectron_pt',\n", + " 'LowPtElectron_ptbiased',\n", + " 'LowPtElectron_r9',\n", + " 'LowPtElectron_scEtOverPt',\n", + " 'LowPtElectron_sieie',\n", + " 'LowPtElectron_unbiased',\n", + " 'LowPtElectron_charge',\n", + " 'LowPtElectron_convWP',\n", + " 'LowPtElectron_pdgId',\n", + " 'LowPtElectron_convVeto',\n", + " 'LowPtElectron_lostHits',\n", + " 'MET_MetUnclustEnUpDeltaX',\n", + " 'MET_MetUnclustEnUpDeltaY',\n", + " 'MET_covXX',\n", + " 'MET_covXY',\n", + " 'MET_covYY',\n", + " 'MET_phi',\n", + " 'MET_pt',\n", + " 'MET_significance',\n", + " 'MET_sumEt',\n", + " 'MET_sumPtUnclustered',\n", + " 'nProton_multiRP',\n", + " 'Proton_multiRP_t',\n", + " 'Proton_multiRP_thetaX',\n", + " 'Proton_multiRP_thetaY',\n", + " 'Proton_multiRP_time',\n", + " 'Proton_multiRP_timeUnc',\n", + " 'Proton_multiRP_xi',\n", + " 'Proton_multiRP_arm',\n", + " 'nMuon',\n", + " 'Muon_dxy',\n", + " 'Muon_dxyErr',\n", + " 'Muon_dxybs',\n", + " 'Muon_dz',\n", + " 'Muon_dzErr',\n", + " 'Muon_eta',\n", + " 'Muon_ip3d',\n", + " 'Muon_jetPtRelv2',\n", + " 'Muon_jetRelIso',\n", + " 'Muon_mass',\n", + " 'Muon_miniPFRelIso_all',\n", + " 'Muon_miniPFRelIso_chg',\n", + " 'Muon_pfRelIso03_all',\n", + " 'Muon_pfRelIso03_chg',\n", + " 'Muon_pfRelIso04_all',\n", + " 'Muon_phi',\n", + " 'Muon_pt',\n", + " 'Muon_ptErr',\n", + " 'Muon_segmentComp',\n", + " 'Muon_sip3d',\n", + " 'Muon_softMva',\n", + " 'Muon_tkRelIso',\n", + " 'Muon_tunepRelPt',\n", + " 'Muon_mvaLowPt',\n", + " 'Muon_mvaTTH',\n", + " 'Muon_charge',\n", + " 'Muon_jetIdx',\n", + " 'Muon_nStations',\n", + " 'Muon_nTrackerLayers',\n", + " 'Muon_pdgId',\n", + " 'Muon_tightCharge',\n", + " 'Muon_fsrPhotonIdx',\n", + " 'Muon_highPtId',\n", + " 'Muon_highPurity',\n", + " 'Muon_inTimeMuon',\n", + " 'Muon_isGlobal',\n", + " 'Muon_isPFcand',\n", + " 'Muon_isStandalone',\n", + " 'Muon_isTracker',\n", + " 'Muon_jetNDauCharged',\n", + " 'Muon_looseId',\n", + " 'Muon_mediumId',\n", + " 'Muon_mediumPromptId',\n", + " 'Muon_miniIsoId',\n", + " 'Muon_multiIsoId',\n", + " 'Muon_mvaId',\n", + " 'Muon_mvaLowPtId',\n", + " 'Muon_pfIsoId',\n", + " 'Muon_puppiIsoId',\n", + " 'Muon_softId',\n", + " 'Muon_softMvaId',\n", + " 'Muon_tightId',\n", + " 'Muon_tkIsoId',\n", + " 'Muon_triggerIdLoose',\n", + " 'nPhoton',\n", + " 'Photon_dEscaleDown',\n", + " 'Photon_dEscaleUp',\n", + " 'Photon_dEsigmaDown',\n", + " 'Photon_dEsigmaUp',\n", + " 'Photon_eCorr',\n", + " 'Photon_energyErr',\n", + " 'Photon_eta',\n", + " 'Photon_hoe',\n", + " 'Photon_mass',\n", + " 'Photon_mvaID',\n", + " 'Photon_mvaID_Fall17V1p1',\n", + " 'Photon_pfRelIso03_all',\n", + " 'Photon_pfRelIso03_chg',\n", + " 'Photon_phi',\n", + " 'Photon_pt',\n", + " 'Photon_r9',\n", + " 'Photon_sieie',\n", + " 'Photon_charge',\n", + " 'Photon_cutBased',\n", + " 'Photon_cutBased_Fall17V1Bitmap',\n", + " 'Photon_electronIdx',\n", + " 'Photon_jetIdx',\n", + " 'Photon_pdgId',\n", + " 'Photon_vidNestedWPBitmap',\n", + " 'Photon_electronVeto',\n", + " 'Photon_isScEtaEB',\n", + " 'Photon_isScEtaEE',\n", + " 'Photon_mvaID_WP80',\n", + " 'Photon_mvaID_WP90',\n", + " 'Photon_pixelSeed',\n", + " 'Photon_seedGain',\n", + " 'nPPSLocalTrack',\n", + " 'PPSLocalTrack_x',\n", + " 'PPSLocalTrack_y',\n", + " 'PPSLocalTrack_time',\n", + " 'PPSLocalTrack_timeUnc',\n", + " 'PPSLocalTrack_multiRPProtonIdx',\n", + " 'PPSLocalTrack_singleRPProtonIdx',\n", + " 'PPSLocalTrack_decRPId',\n", + " 'PPSLocalTrack_rpType',\n", + " 'PuppiMET_phi',\n", + " 'PuppiMET_phiJERDown',\n", + " 'PuppiMET_phiJERUp',\n", + " 'PuppiMET_phiJESDown',\n", + " 'PuppiMET_phiJESUp',\n", + " 'PuppiMET_phiUnclusteredDown',\n", + " 'PuppiMET_phiUnclusteredUp',\n", + " 'PuppiMET_pt',\n", + " 'PuppiMET_ptJERDown',\n", + " 'PuppiMET_ptJERUp',\n", + " 'PuppiMET_ptJESDown',\n", + " 'PuppiMET_ptJESUp',\n", + " 'PuppiMET_ptUnclusteredDown',\n", + " 'PuppiMET_ptUnclusteredUp',\n", + " 'PuppiMET_sumEt',\n", + " 'RawMET_phi',\n", + " 'RawMET_pt',\n", + " 'RawMET_sumEt',\n", + " 'RawPuppiMET_phi',\n", + " 'RawPuppiMET_pt',\n", + " 'RawPuppiMET_sumEt',\n", + " 'fixedGridRhoFastjetAll',\n", + " 'fixedGridRhoFastjetCentral',\n", + " 'fixedGridRhoFastjetCentralCalo',\n", + " 'fixedGridRhoFastjetCentralChargedPileUp',\n", + " 'fixedGridRhoFastjetCentralNeutral',\n", + " 'nSoftActivityJet',\n", + " 'SoftActivityJet_eta',\n", + " 'SoftActivityJet_phi',\n", + " 'SoftActivityJet_pt',\n", + " 'SoftActivityJetHT',\n", + " 'SoftActivityJetHT10',\n", + " 'SoftActivityJetHT2',\n", + " 'SoftActivityJetHT5',\n", + " 'SoftActivityJetNjets10',\n", + " 'SoftActivityJetNjets2',\n", + " 'SoftActivityJetNjets5',\n", + " 'nProton_singleRP',\n", + " 'Proton_singleRP_thetaY',\n", + " 'Proton_singleRP_xi',\n", + " 'Proton_singleRP_decRPId',\n", + " 'nSubJet',\n", + " 'SubJet_btagCSVV2',\n", + " 'SubJet_btagDeepB',\n", + " 'SubJet_eta',\n", + " 'SubJet_mass',\n", + " 'SubJet_n2b1',\n", + " 'SubJet_n3b1',\n", + " 'SubJet_phi',\n", + " 'SubJet_pt',\n", + " 'SubJet_rawFactor',\n", + " 'SubJet_tau1',\n", + " 'SubJet_tau2',\n", + " 'SubJet_tau3',\n", + " 'SubJet_tau4',\n", + " 'nTau',\n", + " 'Tau_chargedIso',\n", + " 'Tau_dxy',\n", + " 'Tau_dz',\n", + " 'Tau_eta',\n", + " 'Tau_leadTkDeltaEta',\n", + " 'Tau_leadTkDeltaPhi',\n", + " 'Tau_leadTkPtOverTauPt',\n", + " 'Tau_mass',\n", + " 'Tau_neutralIso',\n", + " 'Tau_phi',\n", + " 'Tau_photonsOutsideSignalCone',\n", + " 'Tau_pt',\n", + " 'Tau_puCorr',\n", + " 'Tau_rawDeepTau2017v2p1VSe',\n", + " 'Tau_rawDeepTau2017v2p1VSjet',\n", + " 'Tau_rawDeepTau2017v2p1VSmu',\n", + " 'Tau_rawIso',\n", + " 'Tau_rawIsodR03',\n", + " 'Tau_charge',\n", + " 'Tau_decayMode',\n", + " 'Tau_jetIdx',\n", + " 'Tau_idAntiEleDeadECal',\n", + " 'Tau_idAntiMu',\n", + " 'Tau_idDecayModeOldDMs',\n", + " 'Tau_idDeepTau2017v2p1VSe',\n", + " 'Tau_idDeepTau2017v2p1VSjet',\n", + " 'Tau_idDeepTau2017v2p1VSmu',\n", + " 'TkMET_phi',\n", + " 'TkMET_pt',\n", + " 'TkMET_sumEt',\n", + " 'nTrigObj',\n", + " 'TrigObj_pt',\n", + " 'TrigObj_eta',\n", + " 'TrigObj_phi',\n", + " 'TrigObj_l1pt',\n", + " 'TrigObj_l1pt_2',\n", + " 'TrigObj_l2pt',\n", + " 'TrigObj_id',\n", + " 'TrigObj_l1iso',\n", + " 'TrigObj_l1charge',\n", + " 'TrigObj_filterBits',\n", + " 'nOtherPV',\n", + " 'OtherPV_z',\n", + " 'PV_ndof',\n", + " 'PV_x',\n", + " 'PV_y',\n", + " 'PV_z',\n", + " 'PV_chi2',\n", + " 'PV_score',\n", + " 'PV_npvs',\n", + " 'PV_npvsGood',\n", + " 'nSV',\n", + " 'SV_dlen',\n", + " 'SV_dlenSig',\n", + " 'SV_dxy',\n", + " 'SV_dxySig',\n", + " 'SV_pAngle',\n", + " 'SV_charge',\n", + " 'FatJetAK15SubJet_Proba',\n", + " 'FatJetAK15SubJet_btagDeepB_b',\n", + " 'FatJetAK15SubJet_btagDeepB_bb',\n", + " 'FatJetAK15SubJet_btagDeepC',\n", + " 'FatJetAK15SubJet_btagDeepL',\n", + " 'FatJetAK15SubJet_nBHadrons',\n", + " 'FatJetAK15SubJet_nCHadrons',\n", + " 'FatJetAK15_DDX_tau1_flightDistance2dSig',\n", + " 'FatJetAK15_DDX_tau1_trackEtaRel_0',\n", + " 'FatJetAK15_DDX_tau1_trackEtaRel_1',\n", + " 'FatJetAK15_DDX_tau1_trackEtaRel_2',\n", + " 'FatJetAK15_DDX_tau1_trackSip3dSig_0',\n", + " 'FatJetAK15_DDX_tau1_trackSip3dSig_1',\n", + " 'FatJetAK15_DDX_tau1_vertexDeltaR',\n", + " 'FatJetAK15_DDX_tau1_vertexEnergyRatio',\n", + " 'FatJetAK15_DDX_tau1_vertexMass',\n", + " 'FatJetAK15_DDX_tau2_flightDistance2dSig',\n", + " 'FatJetAK15_DDX_tau2_trackEtaRel_0',\n", + " 'FatJetAK15_DDX_tau2_trackEtaRel_1',\n", + " 'FatJetAK15_DDX_tau2_trackEtaRel_3',\n", + " 'FatJetAK15_DDX_tau2_trackSip3dSig_0',\n", + " 'FatJetAK15_DDX_tau2_trackSip3dSig_1',\n", + " 'FatJetAK15_DDX_tau2_vertexEnergyRatio',\n", + " 'FatJetAK15_DDX_tau2_vertexMass',\n", + " 'FatJetAK15_DDX_trackSip2dSigAboveBottom_0',\n", + " 'FatJetAK15_DDX_trackSip2dSigAboveBottom_1',\n", + " 'FatJetAK15_DDX_trackSip2dSigAboveCharm',\n", + " 'FatJetAK15_DDX_trackSip3dSig_0',\n", + " 'FatJetAK15_DDX_trackSip3dSig_1',\n", + " 'FatJetAK15_DDX_trackSip3dSig_2',\n", + " 'FatJetAK15_DDX_trackSip3dSig_3',\n", + " 'FatJetAK15_DDX_z_ratio',\n", + " 'FatJetAK15_Proba',\n", + " 'FatJetAK15_btagDDBvLV2',\n", + " 'FatJetAK15_btagDDCvBV2',\n", + " 'FatJetAK15_btagDDCvLV2',\n", + " 'FatJetAK15_btagDeepB_b',\n", + " 'FatJetAK15_btagDeepB_bb',\n", + " 'FatJetAK15_btagDeepL',\n", + " 'FatJetAK15_DDX_jetNSecondaryVertices',\n", + " 'FatJetAK15_DDX_jetNTracks',\n", + " 'FatJetAK15_nBHadrons',\n", + " 'FatJetAK15_nCHadrons',\n", + " 'FatJet_DDX_tau1_flightDistance2dSig',\n", + " 'FatJet_DDX_tau1_trackEtaRel_0',\n", + " 'FatJet_DDX_tau1_trackEtaRel_1',\n", + " 'FatJet_DDX_tau1_trackEtaRel_2',\n", + " 'FatJet_DDX_tau1_trackSip3dSig_0',\n", + " 'FatJet_DDX_tau1_trackSip3dSig_1',\n", + " 'FatJet_DDX_tau1_vertexDeltaR',\n", + " 'FatJet_DDX_tau1_vertexEnergyRatio',\n", + " 'FatJet_DDX_tau1_vertexMass',\n", + " 'FatJet_DDX_tau2_flightDistance2dSig',\n", + " 'FatJet_DDX_tau2_trackEtaRel_0',\n", + " 'FatJet_DDX_tau2_trackEtaRel_1',\n", + " 'FatJet_DDX_tau2_trackEtaRel_3',\n", + " 'FatJet_DDX_tau2_trackSip3dSig_0',\n", + " 'FatJet_DDX_tau2_trackSip3dSig_1',\n", + " 'FatJet_DDX_tau2_vertexEnergyRatio',\n", + " 'FatJet_DDX_tau2_vertexMass',\n", + " 'FatJet_DDX_trackSip2dSigAboveBottom_0',\n", + " 'FatJet_DDX_trackSip2dSigAboveBottom_1',\n", + " 'FatJet_DDX_trackSip2dSigAboveCharm',\n", + " 'FatJet_DDX_trackSip3dSig_0',\n", + " 'FatJet_DDX_trackSip3dSig_1',\n", + " 'FatJet_DDX_trackSip3dSig_2',\n", + " 'FatJet_DDX_trackSip3dSig_3',\n", + " 'FatJet_DDX_z_ratio',\n", + " 'FatJet_Proba',\n", + " 'FatJet_btagDDBvLV2',\n", + " 'FatJet_btagDDCvBV2',\n", + " 'FatJet_btagDDCvLV2',\n", + " 'FatJet_btagDeepB_b',\n", + " 'FatJet_btagDeepB_bb',\n", + " 'FatJet_btagDeepL',\n", + " 'FatJet_DDX_jetNSecondaryVertices',\n", + " 'FatJet_DDX_jetNTracks',\n", + " 'FatJet_nBHadrons',\n", + " 'FatJet_nCHadrons',\n", + " 'Jet_DeepCSV_flightDistance2dSig',\n", + " 'Jet_DeepCSV_flightDistance2dVal',\n", + " 'Jet_DeepCSV_flightDistance3dSig',\n", + " 'Jet_DeepCSV_flightDistance3dVal',\n", + " 'Jet_DeepCSV_trackDecayLenVal_0',\n", + " 'Jet_DeepCSV_trackDecayLenVal_1',\n", + " 'Jet_DeepCSV_trackDecayLenVal_2',\n", + " 'Jet_DeepCSV_trackDecayLenVal_3',\n", + " 'Jet_DeepCSV_trackDecayLenVal_4',\n", + " 'Jet_DeepCSV_trackDecayLenVal_5',\n", + " 'Jet_DeepCSV_trackDeltaR_0',\n", + " 'Jet_DeepCSV_trackDeltaR_1',\n", + " 'Jet_DeepCSV_trackDeltaR_2',\n", + " 'Jet_DeepCSV_trackDeltaR_3',\n", + " 'Jet_DeepCSV_trackDeltaR_4',\n", + " 'Jet_DeepCSV_trackDeltaR_5',\n", + " 'Jet_DeepCSV_trackEtaRel_0',\n", + " 'Jet_DeepCSV_trackEtaRel_1',\n", + " 'Jet_DeepCSV_trackEtaRel_2',\n", + " 'Jet_DeepCSV_trackEtaRel_3',\n", + " 'Jet_DeepCSV_trackJetDistVal_0',\n", + " 'Jet_DeepCSV_trackJetDistVal_1',\n", + " 'Jet_DeepCSV_trackJetDistVal_2',\n", + " 'Jet_DeepCSV_trackJetDistVal_3',\n", + " 'Jet_DeepCSV_trackJetDistVal_4',\n", + " 'Jet_DeepCSV_trackJetDistVal_5',\n", + " 'Jet_DeepCSV_trackJetPt',\n", + " 'Jet_DeepCSV_trackPtRatio_0',\n", + " 'Jet_DeepCSV_trackPtRatio_1',\n", + " 'Jet_DeepCSV_trackPtRatio_2',\n", + " 'Jet_DeepCSV_trackPtRatio_3',\n", + " 'Jet_DeepCSV_trackPtRatio_4',\n", + " 'Jet_DeepCSV_trackPtRatio_5',\n", + " 'Jet_DeepCSV_trackPtRel_0',\n", + " 'Jet_DeepCSV_trackPtRel_1',\n", + " 'Jet_DeepCSV_trackPtRel_2',\n", + " 'Jet_DeepCSV_trackPtRel_3',\n", + " 'Jet_DeepCSV_trackPtRel_4',\n", + " 'Jet_DeepCSV_trackPtRel_5',\n", + " 'Jet_DeepCSV_trackSip2dSigAboveCharm',\n", + " 'Jet_DeepCSV_trackSip2dSig_0',\n", + " 'Jet_DeepCSV_trackSip2dSig_1',\n", + " 'Jet_DeepCSV_trackSip2dSig_2',\n", + " 'Jet_DeepCSV_trackSip2dSig_3',\n", + " 'Jet_DeepCSV_trackSip2dSig_4',\n", + " 'Jet_DeepCSV_trackSip2dSig_5',\n", + " 'Jet_DeepCSV_trackSip2dValAboveCharm',\n", + " 'Jet_DeepCSV_trackSip3dSigAboveCharm',\n", + " 'Jet_DeepCSV_trackSip3dSig_0',\n", + " 'Jet_DeepCSV_trackSip3dSig_1',\n", + " 'Jet_DeepCSV_trackSip3dSig_2',\n", + " 'Jet_DeepCSV_trackSip3dSig_3',\n", + " 'Jet_DeepCSV_trackSip3dSig_4',\n", + " 'Jet_DeepCSV_trackSip3dSig_5',\n", + " 'Jet_DeepCSV_trackSip3dValAboveCharm',\n", + " 'Jet_DeepCSV_trackSumJetDeltaR',\n", + " 'Jet_DeepCSV_trackSumJetEtRatio',\n", + " 'Jet_DeepCSV_vertexCategory',\n", + " 'Jet_DeepCSV_vertexEnergyRatio',\n", + " 'Jet_DeepCSV_vertexJetDeltaR',\n", + " 'Jet_DeepCSV_vertexMass',\n", + " 'Jet_Proba',\n", + " 'Jet_btagDeepB_b',\n", + " 'Jet_btagDeepB_bb',\n", + " 'Jet_btagDeepL',\n", + " 'Jet_DeepCSV_jetNSecondaryVertices',\n", + " 'Jet_DeepCSV_jetNSelectedTracks',\n", + " 'Jet_DeepCSV_jetNTracksEtaRel',\n", + " 'Jet_DeepCSV_vertexNTracks',\n", + " 'Jet_nBHadrons',\n", + " 'Jet_nCHadrons',\n", + " 'SubJet_Proba',\n", + " 'SubJet_btagDeepB_b',\n", + " 'SubJet_btagDeepB_bb',\n", + " 'SubJet_btagDeepC',\n", + " 'SubJet_btagDeepL',\n", + " 'SubJet_nBHadrons',\n", + " 'SubJet_nCHadrons',\n", + " 'Electron_cleanmask',\n", + " 'Jet_cleanmask',\n", + " 'Muon_cleanmask',\n", + " 'Photon_cleanmask',\n", + " 'Tau_cleanmask',\n", + " 'SV_chi2',\n", + " 'SV_eta',\n", + " 'SV_mass',\n", + " 'SV_ndof',\n", + " 'SV_phi',\n", + " 'SV_pt',\n", + " 'SV_x',\n", + " 'SV_y',\n", + " 'SV_z',\n", + " 'SV_ntracks',\n", + " 'L1_AlwaysTrue',\n", + " 'L1_BPTX_LUT1_AND',\n", + " 'L1_BPTX_LUT1_B1',\n", + " 'L1_BPTX_LUT1_B2',\n", + " 'L1_BPTX_LUT1_OR',\n", + " 'L1_BPTX_LUT2_AND',\n", + " 'L1_BPTX_LUT2_B1NotB2',\n", + " 'L1_BPTX_LUT2_B2NotB1',\n", + " 'L1_BPTX_LUT2_NotOR',\n", + " 'L1_BPTX_TRIG2_AND',\n", + " 'L1_BPTX_TRIG2_B1NotB2',\n", + " 'L1_BPTX_TRIG2_B2NotB1',\n", + " 'L1_BPTX_TRIG2_NotOR',\n", + " 'L1_BRIL_TRIG0_AND',\n", + " 'L1_BRIL_TRIG0_FstBunchInTrain',\n", + " 'L1_BRIL_TRIG0_OR',\n", + " 'L1_BRIL_TRIG0_delayedAND',\n", + " 'L1_BRIL_TRIG3_AND',\n", + " 'L1_BRIL_TRIG3_delayedAND',\n", + " 'L1_BRIL_TRIG3_ref',\n", + " 'L1_BeamGasB1',\n", + " 'L1_BeamGasB2',\n", + " 'L1_BeamGasMinus',\n", + " 'L1_BeamGasPlus',\n", + " 'L1_BptxMinus',\n", + " 'L1_BptxOR',\n", + " 'L1_BptxPlus',\n", + " 'L1_BptxXOR',\n", + " 'L1_DoubleEG6_HTT255',\n", + " 'L1_DoubleEG_15_10',\n", + " 'L1_DoubleEG_18_17',\n", + " 'L1_DoubleEG_20_18',\n", + " 'L1_DoubleEG_22_10',\n", + " 'L1_DoubleEG_22_12',\n", + " 'L1_DoubleEG_22_15',\n", + " 'L1_DoubleEG_23_10',\n", + " 'L1_DoubleEG_24_17',\n", + " 'L1_DoubleIsoTau26er',\n", + " 'L1_DoubleIsoTau27er',\n", + " 'L1_DoubleIsoTau28er',\n", + " 'L1_DoubleIsoTau29er',\n", + " 'L1_DoubleIsoTau30er',\n", + " 'L1_DoubleIsoTau32er',\n", + " 'L1_DoubleJet12_ForwardBackward',\n", + " 'L1_DoubleJet16_ForwardBackward',\n", + " 'L1_DoubleJet8_ForwardBackward',\n", + " 'L1_DoubleJetC100',\n", + " 'L1_DoubleJetC112',\n", + " 'L1_DoubleJetC120',\n", + " 'L1_DoubleJetC40',\n", + " 'L1_DoubleJetC50',\n", + " 'L1_DoubleJetC60',\n", + " 'L1_DoubleJetC60_ETM60',\n", + " 'L1_DoubleJetC80',\n", + " 'L1_DoubleMu0',\n", + " 'L1_DoubleMu0er1p6_dEta_Max1p8',\n", + " 'L1_DoubleMu0er1p6_dEta_Max1p8_OS',\n", + " 'L1_DoubleMu7_EG14',\n", + " 'L1_DoubleMu7_EG7',\n", + " 'L1_DoubleMuOpen',\n", + " 'L1_DoubleMu_10_0_dEta_Max1p8',\n", + " 'L1_DoubleMu_10_3p5',\n", + " 'L1_DoubleMu_10_Open',\n", + " 'L1_DoubleMu_11_4',\n", + " 'L1_DoubleMu_12_5',\n", + " 'L1_DoubleMu_12_8',\n", + " 'L1_DoubleMu_13_6',\n", + " 'L1_DoubleMu_15_5',\n", + " 'L1_DoubleTau50er',\n", + " 'L1_EG25er_HTT125',\n", + " 'L1_EG27er_HTT200',\n", + " 'L1_ETM100',\n", + " 'L1_ETM120',\n", + " 'L1_ETM30',\n", + " 'L1_ETM40',\n", + " 'L1_ETM50',\n", + " 'L1_ETM60',\n", + " 'L1_ETM60_Jet60_dPhi_Min0p4',\n", + " 'L1_ETM70',\n", + " 'L1_ETM80',\n", + " 'L1_ETM90',\n", + " 'L1_ETT25',\n", + " 'L1_ETT25_BptxAND',\n", + " 'L1_ETT35_BptxAND',\n", + " 'L1_ETT50_BptxAND',\n", + " 'L1_ETT60_BptxAND',\n", + " 'L1_HTM100',\n", + " 'L1_HTM120',\n", + " 'L1_HTM130',\n", + " 'L1_HTM140',\n", + " 'L1_HTM150',\n", + " 'L1_HTM50',\n", + " 'L1_HTM60_HTT260',\n", + " 'L1_HTM70',\n", + " 'L1_HTM80',\n", + " 'L1_HTM80_HTT220',\n", + " 'L1_HTT120',\n", + " 'L1_HTT160',\n", + " 'L1_HTT200',\n", + " 'L1_HTT220',\n", + " 'L1_HTT240',\n", + " 'L1_HTT255',\n", + " 'L1_HTT270',\n", + " 'L1_HTT280',\n", + " 'L1_HTT300',\n", + " 'L1_HTT320',\n", + " 'L1_IsoEG22er_Tau20er_dEta_Min0p2',\n", + " 'L1_IsolatedBunch',\n", + " 'L1_Jet32_DoubleMuOpen_Mu10_dPhi_Jet_Mu0_Max0p4_dPhi_Mu_Mu_Min1p0',\n", + " 'L1_Jet32_MuOpen_EG10_dPhi_Jet_Mu_Max0p4_dPhi_Mu_EG_Min1p0',\n", + " 'L1_MU20_EG15',\n", + " 'L1_MinimumBiasHF0_AND',\n", + " 'L1_MinimumBiasHF0_AND_BptxAND',\n", + " 'L1_MinimumBiasHF0_OR',\n", + " 'L1_MinimumBiasHF0_OR_BptxAND',\n", + " 'L1_MinimumBiasHF1_AND',\n", + " 'L1_MinimumBiasHF1_AND_BptxAND',\n", + " 'L1_MinimumBiasHF1_OR',\n", + " 'L1_MinimumBiasHF1_OR_BptxAND',\n", + " 'L1_Mu0er_ETM40',\n", + " 'L1_Mu0er_ETM55',\n", + " 'L1_Mu10er_ETM30',\n", + " 'L1_Mu10er_ETM50',\n", + " 'L1_Mu12_EG10',\n", + " 'L1_Mu14er_ETM30',\n", + " 'L1_Mu16er_Tau20er',\n", + " 'L1_Mu16er_Tau24er',\n", + " 'L1_Mu18er_IsoTau26er',\n", + " 'L1_Mu18er_Tau20er',\n", + " 'L1_Mu18er_Tau24er',\n", + " 'L1_Mu20_EG10',\n", + " 'L1_Mu20_EG17',\n", + " 'L1_Mu20er_IsoTau26er',\n", + " 'L1_Mu23_EG10',\n", + " 'L1_Mu23_IsoEG10',\n", + " 'L1_Mu3_JetC120',\n", + " 'L1_Mu3_JetC120_dEta_Max0p4_dPhi_Max0p4',\n", + " 'L1_Mu3_JetC16',\n", + " 'L1_Mu3_JetC16_dEta_Max0p4_dPhi_Max0p4',\n", + " 'L1_Mu3_JetC60',\n", + " 'L1_Mu3_JetC60_dEta_Max0p4_dPhi_Max0p4',\n", + " 'L1_Mu5_EG15',\n", + " 'L1_Mu5_EG20',\n", + " 'L1_Mu5_EG23',\n", + " 'L1_Mu5_IsoEG18',\n", + " 'L1_Mu5_IsoEG20',\n", + " 'L1_Mu6_DoubleEG10',\n", + " 'L1_Mu6_DoubleEG17',\n", + " 'L1_Mu6_HTT200',\n", + " 'L1_Mu8_HTT150',\n", + " 'L1_NotBptxOR',\n", + " 'L1_QuadJetC36_Tau52',\n", + " 'L1_QuadJetC40',\n", + " 'L1_QuadJetC50',\n", + " 'L1_QuadJetC60',\n", + " 'L1_QuadMu0',\n", + " 'L1_SingleEG10',\n", + " 'L1_SingleEG15',\n", + " 'L1_SingleEG18',\n", + " 'L1_SingleEG24',\n", + " 'L1_SingleEG26',\n", + " 'L1_SingleEG28',\n", + " 'L1_SingleEG2_BptxAND',\n", + " 'L1_SingleEG30',\n", + " 'L1_SingleEG34',\n", + " 'L1_SingleEG40',\n", + " 'L1_SingleEG45',\n", + " 'L1_SingleEG5',\n", + " 'L1_SingleIsoEG18',\n", + " 'L1_SingleIsoEG18er',\n", + " 'L1_SingleIsoEG20',\n", + " 'L1_SingleIsoEG20er',\n", + " 'L1_SingleIsoEG22',\n", + " 'L1_SingleIsoEG22er',\n", + " 'L1_SingleIsoEG24',\n", + " 'L1_SingleIsoEG24er',\n", + " 'L1_SingleIsoEG26',\n", + " 'L1_SingleIsoEG26er',\n", + " 'L1_SingleIsoEG28',\n", + " 'L1_SingleIsoEG28er',\n", + " 'L1_SingleIsoEG30',\n", + " 'L1_SingleIsoEG30er',\n", + " 'L1_SingleIsoEG34',\n", + " 'L1_SingleIsoEG34er',\n", + " 'L1_SingleJet120',\n", + " 'L1_SingleJet12_BptxAND',\n", + " 'L1_SingleJet140',\n", + " 'L1_SingleJet150',\n", + " 'L1_SingleJet16',\n", + " 'L1_SingleJet160',\n", + " 'L1_SingleJet170',\n", + " 'L1_SingleJet180',\n", + " 'L1_SingleJet20',\n", + " 'L1_SingleJet200',\n", + " 'L1_SingleJet35',\n", + " 'L1_SingleJet60',\n", + " 'L1_SingleJet8_BptxAND',\n", + " 'L1_SingleJet90',\n", + " 'L1_SingleJetC20_NotBptxOR',\n", + " 'L1_SingleJetC20_NotBptxOR_3BX',\n", + " 'L1_SingleJetC32_NotBptxOR',\n", + " 'L1_SingleJetC32_NotBptxOR_3BX',\n", + " 'L1_SingleJetC36_NotBptxOR_3BX',\n", + " 'L1_SingleMu10_LowQ',\n", + " 'L1_SingleMu12',\n", + " 'L1_SingleMu14',\n", + " 'L1_SingleMu14er',\n", + " 'L1_SingleMu16',\n", + " 'L1_SingleMu16er',\n", + " 'L1_SingleMu18',\n", + " ...]" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "events.keys()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "python39", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.15" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/src/HHbbVV/postprocessing/PostProcess.ipynb b/src/HHbbVV/postprocessing/PostProcess.ipynb index 8c299bc5..4ea4476c 100644 --- a/src/HHbbVV/postprocessing/PostProcess.ipynb +++ b/src/HHbbVV/postprocessing/PostProcess.ipynb @@ -81,20 +81,21 @@ "\n", "MAIN_DIR = Path(\"../../../\")\n", "samples_dir = MAIN_DIR / \"../data/skimmer/24Mar14UpdateData\"\n", - "year = \"2018\"\n", + "year = \"2016APV\"\n", "bdt_preds_dir = samples_dir / \"24_04_05_k2v0_training_eqsig_vbf_vars_rm_deta/inferences\"\n", "\n", - "date = \"24Jun1\"\n", - "plot_dir = MAIN_DIR / f\"plots/PostProcessing/{date}LPSFs\"\n", - "templates_dir = f\"templates/{date}\"\n", - "_ = os.system(f\"mkdir -p {plot_dir}\")\n", + "date = \"24Jul4Event\"\n", + "plot_dir = MAIN_DIR / f\"plots/PostProcessing/{date}\"\n", + "templates_dir = Path(\"templates\") / date\n", "_ = os.system(f\"mkdir -p {plot_dir}/cutflows/\")\n", + "_ = os.system(f\"mkdir -p {plot_dir}/templates/\")\n", "_ = os.system(f\"mkdir -p {plot_dir}/ControlPlots/{year}/\")\n", "# _ = os.system(f\"mkdir -p {plot_dir}/templates/\")\n", "# _ = os.system(f\"mkdir -p {plot_dir}/templates/wshifts\")\n", "# _ = os.system(f\"mkdir -p {plot_dir}/templates/jshifts\")\n", "# _ = os.system(f\"mkdir -p {templates_dir}\")\n", "\n", + "(templates_dir / \"cutflows\" / year).mkdir(exist_ok=True, parents=True)\n", "selection_regions = postprocessing.get_nonres_selection_regions(year)" ] }, @@ -111,6 +112,8 @@ " # \"qqHH_CV_1_C2V_2_kl_1_HHbbVV\": \"VBF_HHTobbVV_CV_1_C2V_2_C3_1\",\n", "}\n", "\n", + "mc_samples = {key: val for key, val in samples.items() if key not in [data_key]}\n", + "\n", "# bg_keys = [\"QCD\", \"TT\", \"Data\"]\n", "# samples = {key: val for key, val in samples.items() if key in bg_keys}" ] @@ -135,20 +138,37 @@ "cutflow = pd.DataFrame(index=list(samples.keys()) + list(nonres_samples.keys()))\n", "\n", "events_dict = postprocessing.load_samples(\n", - " # samples_dir, {**nonres_samples, **samples}, year, filters, hem_cleaning=False, variations=False\n", " samples_dir,\n", - " {**nonres_samples},\n", + " {**nonres_samples, **samples},\n", " year,\n", " filters,\n", " hem_cleaning=False,\n", " variations=False,\n", + " # samples_dir, {**nonres_samples, **mc_samples}, year, filters, hem_cleaning=False, variations=False\n", + " # samples_dir,\n", + " # {**nonres_samples},\n", + " # year,\n", + " # filters,\n", + " # hem_cleaning=False,\n", + " # variations=False,\n", ")\n", - "# events_dict |= postprocessing.load_samples(samples_dir, {\"Data\": \"JetHT\"}, year, filters, hem_cleaning=False)\n", + "# events_dict |= postprocessing.load_samples(MAIN_DIR / \"../data/skimmer/24Jul4Event\", {\"Data\": \"JetHT\"}, year, filters, hem_cleaning=False)\n", "\n", "utils.add_to_cutflow(events_dict, \"Preselection\", \"finalWeight\", cutflow)\n", "cutflow" ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "datanew = postprocessing.load_samples(\n", + " MAIN_DIR / \"../data/skimmer/24Jul4Event\", {\"Data\": \"JetHT\"}, year, filters, hem_cleaning=False\n", + ")" + ] + }, { "attachments": {}, "cell_type": "markdown", @@ -425,7 +445,7 @@ "source": [ "postprocessing.lpsfs(\n", " list(nonres_samples.keys()),\n", - " selection_regions[\"lpsf_passggf\"],\n", + " selection_regions[\"lpsf_passvbf\"],\n", " systematics,\n", " events_dict,\n", " bb_masks,\n", @@ -539,18 +559,21 @@ "metadata": {}, "outputs": [], "source": [ - "h, tsysts = postprocessing.get_templates(\n", + "h = postprocessing.get_templates(\n", " events_dict,\n", " bb_masks,\n", " year,\n", - " nonres_sig_keys,\n", - " selection_regions,\n", + " list(nonres_samples.keys()),\n", + " {\"passvbf\": selection_regions[\"passvbf\"]},\n", " nonres_shape_vars,\n", " systematics,\n", + " templates_dir,\n", + " lpsfs=False,\n", " bg_keys=bg_keys,\n", " plot_dir=f\"{plot_dir}/templates\",\n", " prev_cutflow=cutflow,\n", " weight_shifts={},\n", + " blind=False,\n", " jshift=\"\",\n", " plot_shifts=False,\n", " show=True,\n", @@ -608,6 +631,162 @@ " templates_dict[year] = pickle.load(f)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Get display events" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "sel, cf = utils.make_selection(\n", + " selection_regions[\"passvbf\"].cuts,\n", + " events_dict,\n", + " bb_masks,\n", + " prev_cutflow=None,\n", + " jshift=\"\",\n", + " weight_key=\"finalWeight\",\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "sel_events = events_dict[\"Data\"][sel[\"Data\"]]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "np.sum(\n", + " (datanew[\"Data\"][\"ak8FatJetMsd\"][1].to_numpy() == sel_events[\"ak8FatJetMsd\"][1].to_numpy()[0])\n", + " * (datanew[\"Data\"][\"ak8FatJetPt\"][1].to_numpy() == sel_events[\"ak8FatJetPt\"][1].to_numpy()[0])\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "event2bool = (\n", + " datanew[\"Data\"][\"ak8FatJetMsd\"][1].to_numpy() == sel_events[\"ak8FatJetMsd\"][1].to_numpy()[0]\n", + ") * (datanew[\"Data\"][\"ak8FatJetPt\"][1].to_numpy() == sel_events[\"ak8FatJetPt\"][1].to_numpy()[0])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "event1bool = (\n", + " datanew[\"Data\"][\"ak8FatJetMsd\"][1].to_numpy() == sel_events[\"ak8FatJetMsd\"][1].to_numpy()[2]\n", + ") * (datanew[\"Data\"][\"ak8FatJetPt\"][1].to_numpy() == sel_events[\"ak8FatJetPt\"][1].to_numpy()[2])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "rundir = MAIN_DIR / \"../data/skimmer/24Jul4Event/2016APV/JetHT_Run2016B_ver2_HIPM/parquet\"\n", + "files = [f for f in rundir.iterdir() if f.is_file()]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from tqdm import tqdm\n", + "\n", + "event_id = 310609526\n", + "\n", + "for f in tqdm(files):\n", + " events = pd.read_parquet(f).event.to_numpy()\n", + "\n", + " if np.isin(event_id, events):\n", + " eventmatch = True\n", + " print(f\"Found event {event_id} in {f}!\")\n", + " break" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "event1 = datanew[\"Data\"][event1bool]\n", + "print(event1[\"event\"])\n", + "print(event1[\"run\"])\n", + "print(event1[\"luminosityBlock\"])\n", + "print(event1[\"ak8FatJetPt\"])\n", + "print(event1[\"VBFJetEta\"])\n", + "print(event1[\"ak8FatJetParticleNetMD_Txbb\"])\n", + "print(event1[\"VVFatJetParTMD_THWWvsT\"])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "event2 = datanew[\"Data\"][event2bool]\n", + "print(event2[\"event\"])\n", + "print(event2[\"run\"])\n", + "print(event2[\"luminosityBlock\"])\n", + "print(event2[\"ak8FatJetPt\"])\n", + "print(event2[\"ak8FatJetEta\"])\n", + "print(event2[\"ak8FatJetPhi\"])\n", + "print(event2[\"VBFJetEta\"])\n", + "print(event2[\"ak8FatJetParticleNetMD_Txbb\"])\n", + "print(event2[\"VVFatJetParTMD_THWWvsT\"])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "event2[\"ak8FatJetParticleNetMD_Txbb\"]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "events_dict[\"Data\"][sel[\"Data\"]][\"ak8FatJetParticleNetMass\"]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "events_dict[\"Data\"][sel[\"Data\"]][\"ak8FatJetParticleNetMD_Txbb\"]" + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/src/HHbbVV/postprocessing/templates/24Jul4Event/cutflows/2016APV/passvbf_cutflow.csv b/src/HHbbVV/postprocessing/templates/24Jul4Event/cutflows/2016APV/passvbf_cutflow.csv new file mode 100644 index 00000000..08d77844 --- /dev/null +++ b/src/HHbbVV/postprocessing/templates/24Jul4Event/cutflows/2016APV/passvbf_cutflow.csv @@ -0,0 +1,17 @@ +,Preselection,QCD SF,bbFatJetPt >= 300,VVFatJetPt >= 300,BDTScoreVBF >= 0.999,bbFatJetParticleNetMD_Txbb >= 0.9883 +QCD,900603.372757249,1219440.0804636534,1208187.047601593,1199914.6854996895,7.71705682833504,6.049274062699175 +TT,76537.02908224265,76537.02908224265,76036.67089183381,75504.25522211792,3.027786048276932,0.26235626208860474 +ST,6617.229257123121,6617.229257123121,6568.071623368754,6530.558860743446,0.262844709582459,0.0 +W+Jets,12421.273275458932,12421.273275458932,12341.31450378544,12265.115729916284,0.8767605906549117,0.0 +Z+Jets,14717.02364266734,14717.02364266734,14601.426751424733,14517.101697865306,0.0641416456478138,0.0 +Diboson,703.6912877316817,703.6912877316817,699.1389217855917,695.3097641927543,0.0,0.0 +ggFHbb,138.81856362723408,138.81856362723408,138.12124620347993,137.14696515108136,0.0,0.0 +VBFHbb,40.60062332311162,40.60062332311162,40.47235839402518,40.3369080970762,0.0,0.0 +ZHbb,38.56092725636813,38.56092725636813,38.30734801182328,38.14508043229702,0.0,0.0 +WHbb,66.232275837835,66.232275837835,65.79568909543664,65.5789510146088,0.0,0.0 +ggZHbb,5.921431593700421,5.921431593700421,5.88900772329133,5.855043713430598,0.0,0.0 +ttHbb,187.9810602386041,187.9810602386041,186.85674951555848,185.63841488932138,0.006165574380285853,0.0 +HWW,97.55810924622651,97.55810924622651,97.00857794271565,96.26976864081334,0.12565653995308684,0.022886908957980946 +Data,1331012.0,1331012.0,1331012.0,1331012.0,33.0,3.0 +HHbbVV,1.108127280079604,1.108127280079604,1.1005594143174928,1.0940812392241102,0.011009117010780157,0.005530963961569239 +qqHH_CV_1_C2V_0_kl_1_HHbbVV,11.015595087816134,11.015595087816134,10.992704362069707,10.974097162767547,2.057637098933057,1.2400244607049622 diff --git a/src/HHbbVV/processors/bbVVSkimmer.py b/src/HHbbVV/processors/bbVVSkimmer.py index 099736ab..f4916c83 100644 --- a/src/HHbbVV/processors/bbVVSkimmer.py +++ b/src/HHbbVV/processors/bbVVSkimmer.py @@ -73,6 +73,7 @@ class bbVVSkimmer(SkimmerABC): """ # key is name in nano files, value will be the name in the skimmed output + # IMPORTANT!! REMEMBER TO ADD NEW VARIABLES TO min_branches IF NEEDED skim_vars = { # noqa: RUF012 "FatJet": { **P4, @@ -84,7 +85,13 @@ class bbVVSkimmer(SkimmerABC): }, "Jet": P4, "GenHiggs": P4, - "other": {"MET_pt": "MET_pt", "MET_phi": "MET_phi"}, + "other": { + "MET_pt": "MET_pt", + "MET_phi": "MET_phi", + "event": "event", + "run": "run", + "luminosityBlock": "luminosityBlock", + }, } preselection = { # noqa: RUF012 @@ -145,6 +152,9 @@ class bbVVSkimmer(SkimmerABC): "ak8FatJetLowestWTaggedTxbb", "ak8FatJetWTaggedMsd", "ak8FatJetWTaggedParticleNetMass", + "event", + "run", + "luminosityBlock", ] for shift in jec_shifts: @@ -384,10 +394,13 @@ def process(self, events: ak.Array): skimmed_events["nGoodVBFJets"] = np.array(ak.sum(vbf_jet_mask, axis=1)) - otherVars = { - key: events[var.split("_")[0]]["_".join(var.split("_")[1:])].to_numpy() - for (var, key) in self.skim_vars["other"].items() - } + otherVars = {} + + for var, key in self.skim_vars["other"].items(): + if "_" in var: + otherVars[key] = events[var.split("_")[0]]["_".join(var.split("_")[1:])].to_numpy() + else: + otherVars[key] = events[var].to_numpy() skimmed_events = {**skimmed_events, **ak8FatJetVars, **VBFJetVars, **dijetVars, **otherVars}