code wiki / _hdl_build / nx_dataframe.nx
nx_dataframe.nx
buildroot/runtime/_hdl_build/nx_dataframe.nx
about
nx_dataframe.nx -- LIB: the AGGREGATION FRONT DOOR the analytics stack was missing (operator 2026-07-10:
"our data engineer and analytics is toy level"). The audit found real PRIMITIVES (sketches, columnar,
seg_store) but NO numeric aggregation, NO GROUP BY, NO value predicate scan -- you hand-rolled everything.
This is the first rung: a general INTEGER-EXACT columnar aggregation engine over an i64 column (or two
parallel key/value columns). 100%-integer -> BIT-REPRODUCIBLE aggregates (the sovereign determinism exceed;
pandas/DuckDB float sums are order-dependent, these are not). Seeds: aggregation-frontend, descriptive-
stats-general, value-range-scan, and GROUP BY (dataframe-ops). Approximate distinct/quantile at scale =
the next rung (wire nx_sketch_hll / nx_sketch_tdigest behind this same front door). license_tier: ORIGINAL
dependencies 2 imports · 6 importers
imports: nx_syscalls.nxnx_vecmath.nx
imported by: nx_analyst_data.nxnx_analyst_multi.nxnx_dataframe_approx.nxnx_dataframe_gate.nxnx_query.nxnx_timeseries.nx
structs
| none |
consts
| none |
functions
| 13 | func df_count(col: *i64, n: i64) -> i64 { return n } called by 1: main |
| 15 | func df_sum(col: *i64, n: i64) -> i64 |
| 22 | func df_min(col: *i64, n: i64) -> i64 |
| 30 | func df_max(col: *i64, n: i64) -> i64 |
| 39 | func df_mean(col: *i64, n: i64, out_rem: *i64) -> i64 |
| 47 | func df_mean_milli(col: *i64, n: i64) -> i64 |
| 55 | func df_var_milli(col: *i64, n: i64) -> i64 |
| 70 | func df_isqrt(v: i64) -> i64 { return vm_isqrt(v) } |
| 74 | func df_filter_count(col: *i64, n: i64, op: i64, thr: i64) -> i64 |
| 92 | func df_filter_sum(col: *i64, n: i64, op: i64, thr: i64) -> i64 called by 1: main |
| 111 | func df_quantile(col: *i64, n: i64, q_permil: i64) -> i64 |
| 137 | func df_groupby(keys: *i64, vals: *i64, n: i64, agg_kind: i64, out_keys: *i64, out_agg: *i64, max_groups: i64) -> i64 called by 1: main |
| 162 | func df_inner_join(lkeys: *i64, lvals: *i64, ln: i64, rkeys: *i64, rvals: *i64, rn: i64, out_l: *i64, out_r: *i64, max_out: i64) -> i64 called by 1: main |