This is a brief description of the datasets and how to access their contents. 
For more details see the code repository associated with this dataset.

There are two datasets:
1) FinalData_ppzee.hdf5
2) FinalData_ppttbar.hdf5

######################################################################

The data can be accessed and turned into python numpy arrays with the following code:

def get_dataset(dataset_name, data_dir='./'):
    # --------------------------------------------------------------------------------------
    # Loads data from .hdf5 file on disk.
    # 
    # Inputs:  dataset_name = Name of .hdf5 data
    #          data_dir     = Path to .hdf5 dataset, default is data_dir set in configs.py
    #
    # Outputs: Returns dictionary of zData and xData arrays
    # --------------------------------------------------------------------------------------
    import os
    data_path = os.path.join(data_dir, dataset_name + '.hdf5')
    import h5py
    fdata = h5py.File(data_path, 'r')

    # -- Get the keys --#
    # zkey = list(fdata.keys())[0]
    # xkey = list(fdata.keys())[1]
    zkey = 'FDL' # "Feynman Diagram Level" historical name
    xkey = 'ROL' # "Reconstructed Object Level" historical name

    # -- Get the data --#
    zgp = fdata.get(zkey)
    if isinstance(zgp, h5py.Dataset):  # For hdf5 files created by me
        zData = zgp
    else:
        zData = zgp.get('zData')

    xgp = fdata.get(xkey)
    if isinstance(xgp, h5py.Dataset):  # For hdf5 files created by me
        xData = xgp
    else:
        xData = xgp.get('xData')

    return dict(z_data=zData, x_data=xData)


This code is run like:

dataset = get_dataset('FinalData_ppzee.hdf5')
print(dataset['z_data'].shape) # numpy array of shape (491699, 8) 
print(dataset['x_data'].shape) # numpy array of shape (491699, 12)

dataset = get_dataset('FinalData_ppttbar.hdf5')
print(dataset['z_data'].shape) # numpy array of shape (422761, 24) 
print(dataset['x_data'].shape) # numpy array of shape (422761, 24)

where 'z_data' corresponds to "theoretical model" data generated with MadGraph5 
and 'x_data' corresponds to the reconstructed "experimental" data generated with Delphes.

######################################################################

The information within is organized as follows:

####### FinalData_ppzee.hdf5 #######

# Samples = rows, particle information = columns

#-- nth sample --#
dataset['z_data'][n,:]

#-- Electron information from nth sample --#
dataset['z_data'][n,0:4] # px, py, pz, E

dataset['z_data'][n,0]   # px
dataset['z_data'][n,1]   # py
dataset['z_data'][n,2]   # pz
dataset['z_data'][n,3]   # E

#-- Positron information from nth sample --#
dataset['z_data'][n,4:8] # px, py, pz, E

dataset['z_data'][n,4]   # px
dataset['z_data'][n,5]   # py
dataset['z_data'][n,6]   # pz
dataset['z_data'][n,7]   # E

--------------------------------------------

#-- nth sample --#
dataset['x_data'][n,:]

#-- Electron information from nth sample --#
dataset['x_data'][n,0:4] # px, py, pz, E

dataset['x_data'][n,0]   # px
dataset['x_data'][n,1]   # py
dataset['x_data'][n,2]   # pz
dataset['x_data'][n,3]   # E

#-- Positron information from nth sample --#
dataset['x_data'][n,4:8] # px, py, pz, E

dataset['x_data'][n,4]   # px
dataset['x_data'][n,5]   # py
dataset['x_data'][n,6]   # pz
dataset['x_data'][n,7]   # E

#-- MET information from nth sample --#
dataset['x_data'][n,4:8] # px, py, pz, E

dataset['x_data'][n,4]   # px
dataset['x_data'][n,5]   # py
dataset['x_data'][n,6]   # pz
dataset['x_data'][n,7]   # E


####### FinalData_ppttbar.hdf5 #######

# Samples = rows, particle information = columns

#-- nth sample --#
dataset['z_data'][n,:]

#-- Electron information from nth sample --#
dataset['z_data'][n,0:4] # px, py, pz, E

dataset['z_data'][n,0]   # px
dataset['z_data'][n,1]   # py
dataset['z_data'][n,2]   # pz
dataset['z_data'][n,3]   # E

#-- Electron anti-neutrino information from nth sample --#
dataset['z_data'][n,4:8] # px, py, pz, E

dataset['z_data'][n,4]   # px
dataset['z_data'][n,5]   # py
dataset['z_data'][n,6]   # pz
dataset['z_data'][n,7]   # E

#-- b quark information from nth sample --#
dataset['z_data'][n,8:12] # px, py, pz, E

dataset['z_data'][n,8]   # px
dataset['z_data'][n,9]   # py
dataset['z_data'][n,10]   # pz
dataset['z_data'][n,11]   # E

#-- b anti-quark information from nth sample --#
dataset['z_data'][n,12:16] # px, py, pz, E

dataset['z_data'][n,12]   # px
dataset['z_data'][n,13]   # py
dataset['z_data'][n,14]   # pz
dataset['z_data'][n,15]   # E

#-- u quark information from nth sample --#
dataset['z_data'][n,16:20] # px, py, pz, E

dataset['z_data'][n,16]   # px
dataset['z_data'][n,17]   # py
dataset['z_data'][n,18]   # pz
dataset['z_data'][n,19]   # E

#-- d anti-quark information from nth sample --#
dataset['z_data'][n,20:24] # px, py, pz, E

dataset['z_data'][n,20]   # px
dataset['z_data'][n,21]   # py
dataset['z_data'][n,22]   # pz
dataset['z_data'][n,23]   # E

--------------------------------------------

#-- nth sample --#
dataset['x_data'][n,:]

#-- Electron information from nth sample --#
dataset['x_data'][n,0:4] # px, py, pz, E

dataset['x_data'][n,0]   # px
dataset['x_data'][n,1]   # py
dataset['x_data'][n,2]   # pz
dataset['x_data'][n,3]   # E

#-- MET information from nth sample --#
dataset['x_data'][n,4:8] # px, py, pz, E

dataset['x_data'][n,4]   # px
dataset['x_data'][n,5]   # py
dataset['x_data'][n,6]   # pz
dataset['x_data'][n,7]   # E

#-- Jet 1 (Leading Jet) information from nth sample --#
dataset['x_data'][n,8:12] # px, py, pz, E

dataset['x_data'][n,8]   # px
dataset['x_data'][n,9]   # py
dataset['x_data'][n,10]   # pz
dataset['x_data'][n,11]   # E

#-- Jet 2 information from nth sample --#
dataset['x_data'][n,12:16] # px, py, pz, E

dataset['x_data'][n,12]   # px
dataset['x_data'][n,13]   # py
dataset['x_data'][n,14]   # pz
dataset['x_data'][n,15]   # E

#-- Jet 3 information from nth sample --#
dataset['x_data'][n,16:20] # px, py, pz, E

dataset['x_data'][n,16]   # px
dataset['x_data'][n,17]   # py
dataset['x_data'][n,18]   # pz
dataset['x_data'][n,19]   # E

#-- Jet 4 information from nth sample --#
dataset['x_data'][n,20:24] # px, py, pz, E

dataset['x_data'][n,20]   # px
dataset['x_data'][n,21]   # py
dataset['x_data'][n,22]   # pz
dataset['x_data'][n,23]   # E

