Skip to main content

hep_tables

Experiments in tables

Introduction

This is prototyping accessing hierarchical data and using other backends to process it (like servicex, etc.).

As a side note - this things is severly restricted by lack of a type system or type info. We need to be able to tell the difference between something that is a single item (like jet.pt()) and something that is a sequence (jet.tracks()).

Some Notes

  • We have split the parser into two - one looks for things having to do with LINQ processes, and the other deals with things connected with expressions ("/" or ">" operations). We have to be able to call back and forth between them at the moment. Which might not be ideal. There may be a way to combine them. The problem is that the expression processor has to forward everything to the other and vice versa. Which means you have to touch both. It works, but it will be a little bit of a mess going forward, I suspect.

  • How should we consider parsing these things - there are math expressions and sequence expressions. We should look carefully at the DAG and make sure the two are well seperated.

  • When a user uses a new histogram function (something that comes from outside) there should be an automatic way to let the local render stuff know that a backend needs to be called for it. Right now that is hardwired into the code. And one could think of splitting some of this - as different backends could implement the same thing - so one frontend (like histogram) and then all the backends could implement it.

  • It is pretty clear that we should bring every single loop item forward as part of a tuple, just do it. That way if we need them, they are there, and we don't have to have this complex structure to go back and access them at a later time. Code will be much simpler. And the rendering code is smart enough not to try to render things that aren't needed (at least, in the xAOD backend).

  • Everythign should be typed. And we should use Sequence[xxx] to represent the sequecne, so write our own templated type

  • We need to monitor the "depth" we are working on in a sequence. Sequence can be nested, and some how we need to normalize how we think about that. As you have to nest Select statements the deeper you go. Currently you can go one or two in this code, this needs to be something general.

Metadata

Release files for hep-tables 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hep-tables 1.0.0
File Size Uploaded
hep_tables-1.0.0.tar.gz 19.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hep-tables 1.0.0
File Interpreter ABI Platform
hep_tables-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 41.1 kB

Release files / hep_tables-1.0.0.tar.gz

Download URL hep_tables-1.0.0.tar.gz
Size 19.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a14b1792a00b8335b33b940d9a77f9a0e4cd9efaf3585bc7a33f4464e75bff4e
BLAKE2b-256 checksum
How to use checksums
32bf5ad11047f493eb0f82701c6372d01bd827a44d1a2889b516018f8602d734
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.7

Release files / hep_tables-1.0.0-py3-none-any.whl

Download URL hep_tables-1.0.0-py3-none-any.whl
Size 21.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d14d9ad61ec3a23c1869b87962e991f4aae0ec0a38ca26c16f2c63016c705ed8
BLAKE2b-256 checksum
How to use checksums
0afc696323950bbb788bef22790061c4411846016d29245c36931bafd2bbd9b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.7
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page