Skip to content

Main content

Histogram Adjacent Bin Merge Plan

Explicit finite ordered histogram edges and nonnegative mass observations; merge whole adjacent bins using explicit increasing boundary indexes including both endpoints; no proportional splitting or extrapolation.

Loading tool…

Description

Merge adjacent whole histogram bins according to explicit retained boundary indexes.

Histogram edges divide a numeric coordinate axis into ordered bins, while each bin mass represents a count or nonnegative weight. Probability mass is a fraction of the total; probability density additionally divides by bin width and therefore has inverse coordinate units. An edge plan alone contains no observations.

Merge adjacent whole histogram bins according to explicit retained boundary indexes.

When to use this tool

Use retained boundary indexes to combine adjacent bins while preserving their total mass.

How to use the tool and how it works

  1. Enter edges, mass, boundaries using the definitions below.
  2. Run the operation. Resolve input-format errors before interpreting an output.
  3. Read result.edges, result.mass, using the stated boundary, ordering, sign and absence conventions.

Require increasing integer boundary indexes beginning at zero and ending at the original bin count. Select those edges and sum all original masses between each adjacent pair of retained boundaries.1

Input fieldMeaning and unitsAccepted input
edgesAt least two finite strictly increasing coordinate edges. Their units define interval lengths and density units.Dense list of at most 128 finite numbers, under the stated integer/range rules.
massNonnegative finite bin masses in bin order; paired edge lists require mass.length=edges.length-1.Dense list of at most 128 finite numbers, under the stated integer/range rules.
boundariesIncreasing integer edge indexes, at least two, starting at 0 and ending at mass.length; these select retained boundaries.Dense list of at most 128 finite numbers, under the stated integer/range rules.
Output fieldInterpretation
resultObject containing the fields below.
result.edgesResulting increasing coordinate boundaries; no observations are implicitly added.
result.massSummed mass per merged bin, preserving total input mass.
json
{
  "input": {
    "edges": [
      0,
      1,
      2,
      4
    ],
    "mass": [
      1,
      2,
      3
    ],
    "boundaries": [
      0,
      2,
      3
    ]
  },
  "output": {
    "result": {
      "edges": [
        0,
        2,
        4
      ],
      "mass": [
        3,
        3
      ]
    }
  }
}

Limitations and assumptions

  • Only contiguous whole bins are merged, preserving total mass. Boundary indexes are not coordinate values, and the operation does not split a source bin.
  • Edge lists contain at least two finite strictly increasing numbers. A mass array paired with edges has exactly one nonnegative finite mass per interval. Other mass-only operations accept empty arrays. Floating-point calculations do not imply exact decimal arithmetic or recover observations inside a bin.
  • Every declared outer field is required and unknown outer fields are rejected. Strings and JSON text have size limits, lists are bounded to 128 entries, and JSON nesting/node counts are bounded. Tighter operation-specific bounds stated above take precedence.
  • Numeric outputs must remain finite and within safe-integer magnitude. Original record indexes and cell coordinates are zero-based; stated half-open ranges exclude their end.

Alternative or Complementary methods

Keep edge definitions with mass arrays. Use common-boundary coarsening and whole-bin merging for aligned comparisons; use observation-level data when a calculation requires locations within bins.

References

  1. Tool behavior and example: Histogram Adjacent Bin Merge Plan — tool.io

Similar or alternative tools