Software comparison and app workflow

Necessary condition analysis: compare ceilings and requirements

Necessary condition analysis (NCA) examines whether a condition sets a minimum requirement for an outcome. These checks compare the estimated boundary, or ceiling, and the resulting bottleneck requirements with the R NCA package. A separate Store app test checks importing data, calculating a result and saving it.

Reviewed 4 November 2026
7.11e-14Largest difference in the first comparison

What the comparison shows

The numerical comparison uses 36 complete cases, two conditions and seven bottleneck levels. The Store app test uses a different synthetic dataset with eight cases. The tests answer different questions and cannot be combined as one numerical replication. The Store calculation ran successfully, but its values were not compared with an independent reference.

Match the ceiling, range and outcome target

NCA draws a boundary around the observed pattern of condition and outcome values. A bottleneck table uses that boundary to estimate the condition level required for a chosen outcome target. Meeting that requirement is not a guarantee that the outcome will occur.

The reference needs the same ceiling construction, analysis range and direction. It must also report bottlenecks on the same scale, such as original units or percentages of the chosen range. Otherwise the programs may be answering different questions.

The R package comparison checks the estimated ceilings and requirements. The separate Store test checks whether a different imported dataset can be calculated and saved in the application.

Which software produced these results?

The first record identifies the saved calculation compared with the R package. The second identifies the Store version used to import data, calculate and save. Its successful workflow is recorded separately from numerical agreement.

On a small screen, swipe the table sideways to see every column.

RecordQuickPLS build or result checkedReferenceComparison outcome
NCA point estimates/bottlenecksSaved NCA v2 output; reviewed 28 October 2026NCA 5.0.2, independent bottleneck mathPassed the comparisons documented for this record
Observed NCA calculation in the Store app1.03.11 StoreSee which mathematical and app-workflow checks were performedInstalled workflow observed; no numerical reference comparison

Compare the two ceiling methods and their bottlenecks

The comparison uses 36 complete rows, two conditions, the CE-FDH/CR-FDH ceiling methods and seven bottleneck levels. CE-FDH draws a stepped boundary from the observations. CR-FDH fits a straight ceiling line from the boundary information. Comparing each method with the same method in the reference avoids mixing their definitions.

  • This comparison does not add a permutation-inference check. Permutations reshuffle the data to assess the result against a chance reference.
  • ESSE, the ceiling effect-size sensitivity option, is also outside this comparison. The numerical results come from previously saved QuickPLS calculations.
What was checkedValue / scope
Compared numbers and missing-value statuses198
Outside the stated tolerance0
Different scenario names in the comparison record1
Largest absolute difference7.105427357601e-14

Compare one condition and ceiling method at a time

The labels identify condition x or z and the ceiling method. Compare CE-FDH effect size for x with its reference, then CR-FDH effect size for x. These are two boundary calculations for the same condition, so different effect sizes between them are not automatically a software discrepancy.

The effect size describes the empty ceiling area relative to the stated analysis range. It is not the percentage of outcome variation explained. The table displays 15 significant digits; differences use the numbers before this display rounding. The download preserves the recorded precision and definitions.

On a small screen, swipe the table sideways to see every column.

Quantity comparedQuickPLSReferenceAbsolute differenceComparison result
CE-FDH effect size for x
Result identifierx/ce_fdh/effect_size
0.4345959824438170.4345959824438182.77555756156289e-16Pass
CR-FDH effect size for x
Result identifierx/cr_fdh/effect_size
0.4040316033692990.4040316033692982.22044604925031e-16Pass
CE-FDH effect size for z
Result identifierz/ce_fdh/effect_size
0.1216461559900210.121646155990027.35522753814166e-16Pass
CR-FDH effect size for z
Result identifierz/cr_fdh/effect_size
0.1339340798286430.1339340798286432.22044604925031e-16Pass

A separate Store test of importing, calculating and saving

In the recorded Store app test, a synthetic CSV file with 8 cases and 5 variables was imported and used for a new NCA calculation. Checks of the saved archive passed.

  • This eight-case test checks importing, calculating and saving. It does not include an independently calculated numerical answer for that run.

Error limits for the R package comparison

These limits apply to the saved numerical comparison, including the ceiling and bottleneck outputs. They do not supply a numerical accuracy result for the separate Store workflow test.

abs(native - aligned_reference) <= absolute_tolerance + relative_tolerance * abs(aligned_reference)

In this formula, native is the QuickPLS value and aligned_reference is the reference value expressed using the same definition. abs means absolute value, so the sign does not affect the size of the difference. Absolute tolerance is a fixed allowance. Relative tolerance adds an allowance that grows with the size of the reference value. A separate check verifies whether a result is available or missing where expected; it does not estimate another effect.

On a small screen, swipe the table sideways to see every column.

Absolute toleranceRelative toleranceNumeric or missing-value checksWhere the comparison rule was specified
1e-081e-08196Comparison script
002Comparison script

What these checks tell you

The numerical checks support the stated ceiling methods and bottleneck settings on the compared data. The Store test supports the observed import, calculation and save steps on its own dataset. Neither result should be used as a substitute for the other.

Read each numerical value against its assigned error rule. Counts and unavailable results are checked separately, and repeated outputs for the same conditions are not independent studies.

  • Keep the condition direction, outcome target, analysis range and bottleneck units with the numerical comparison. Its scope does not include the excluded inference and sensitivity options.

Inspect the comparison files

The CSV provides the ceiling and bottleneck comparison values. The JSON report also identifies the separate Store workflow test, so you can see which finding belongs to which dataset and software version.

Repeating either test requires its original dataset and the corresponding settings and software version. The downloads report completed tests and do not include the original datasets or application source code.

Download the comparison results

See the values we checked, the differences we found and the software versions used. The download also identifies the original test files.

About these tests

These are QuickPLS development comparisons. Each record identifies the reference software or mathematical calculation, the tested build and the settings used.

How to understand these comparisons · Find checks for another method