Skip to content

Home / DOE / Analyze / Run Regression

Run Regression

Run Regression fits a model to the responses on a design sheet and writes the result as a regression sheet. Everything else in the Analysis group reads that sheet.

QXL DOE New > Analyze Design > Run Regression

What it needs

A design sheet with responses entered. Runs with no response are skipped rather than treated as zero, so a partly completed experiment can be analysed as far as it has got.

It picks the engine for you

You do not choose a regression type. Quantum XL looks at each output's type and fits the matching model:

Output type Engine Predicts
Quantitative Ordinary Least Squares a value
Binary Binary Logistic the probability of a level
Nominal Nominal Logistic a probability for each level

An output is Quantitative, Binary or Nominal, and each is fitted by a different engine.

A Quantitative output is fitted by least squares and predicted as a value, with a separate model available for its standard deviation.

A Binary output has two outcomes and is fitted by binary logistic regression. The prediction is the probability of the level you selected, not a value on the response scale.

A Nominal output has three or more unordered outcomes and is fitted by nominal logistic regression. The prediction is again a probability, one per level, and the probabilities across the levels sum to one.

A workbook with several outputs of different types gets each one fitted by its own engine in a single run.

There is no ordinal output type

The Type: list on the outputs page offers Quantitative, Binary and Nominal, and nothing else. Quantum XL has no ordinal logistic regression, so an ordered response is entered as one of those three.

Two models for a quantitative output

A quantitative output can get two models rather than one:

  • The response model predicts the mean.
  • The standard deviation model predicts the spread, and needs replicates to estimate anything, since spread cannot be measured from a single run.

Both appear on the regression sheet, and both are available to the charts and to Optimize. See The S-Hat Model.

Coding

The coefficients depend on the coding recorded on the design sheet.

Every quantitative factor is put on a common scale before the regression runs. One expression does it, whichever coding is in force, using a centre \(m_c\) and a scale \(s_c\) that the coding chooses:

\[ x_{\text{coded}} = \frac{x - m_c}{s_c} \]

A categorical factor is never coded this way. Its coded value is \(1\), and the level it sits at selects which coefficient is used instead.

An interaction's coded value is the product of the coded values of the factors in it.

With autocoding, every factor spans the same coded range and coefficients are comparable between factors, which is what makes a Pareto meaningful. To read the equation in real units afterwards, use Uncoded Coefficients. Full details: Design Coding.

What can stop it

A rank deficient X matrix. If the model asks for more independent information than the design contains, the run stops and says the X matrix is rank deficient. It means two or more terms cannot be told apart by these runs: a fraction too small for the interactions requested, a factor that did not vary, or duplicate columns. The fix is to remove terms or add runs, not to change a setting.

A factor with no variation. A factor held at one value throughout carries no information, and coding stops rather than fitting. The message is built to identify the factor by its position number rather than by name, as Factor #n has all the same values., but a defect in how it is assembled means an internal formatting error surfaces in its place, so the sentence itself is not what you see.

Empty cells in a factor column. Factor settings must be complete. A missing response is fine, a missing factor value is not.

The hierarchy check

The hierarchy check runs here, when the regression starts, and not while you edit the model in Modify Design > Add/Remove Interactions. Its strictness is set by Hierarchy warnings on the Regression page of DOE Options:

Setting What must be present
Strict. Check for all interactions. every interaction must have all of its lower-order terms
Normal. Check for main effects only. an interaction must have its main effects
None nothing, except nesting, which is checked whatever this is set to

Strict behaves as Normal on a blocked design. If the model has blocks, the strict setting is downgraded before the check runs, so only main effects are required.

It has two outcomes, and only one of them lets you continue. Both messages open with a line naming the output, with Y-Hat or S-Hat after it for a quantitative output.

  • A missing term that involves a nested factor stops the run. The message has an OK button only, and its second line reads Nested terms require fully hierarchical model. The third line takes one of three forms, chosen by how many terms already in the model are missing a parent and how many parents are missing:

    Terms in the model missing a parent Missing parents The third line
    one one Term 'AB' requires that term 'A' is also included in the model.
    one several Term 'AB' requires that following terms are also included in the model: 'A', 'B'.
    several any Following terms must be included in the model: 'A', 'B'.

    A list longer than five is truncated with and more... in place of the closing full stop. - Any other missing term is a question you can accept. The message reads You are attempting to remove the term 'X' while 'Y' is still in the model.This violates hierarchical modeling. Are you sure you want to remove this term?, with Yes and No and No as the default. Yes runs the regression anyway; No stops it. With more than one term in the list the opening words are You are attempting to remove terms, without "the term".

    The missing space after model. is reproduced above because it is what the dialog prints: the two sentences are separate strings joined without a separator.

This applies at every setting, None included: a nested violation is refused even when Hierarchy warnings is set to None, because the requirements for a nested factor are built whatever the setting says, and a non-nested one is only ever a question even at Strict. So None switches off the check for ordinary interactions and leaves nesting enforced.

What you get

A new worksheet called Regression, inserted after the sheet that was active when you ran it. Every run adds another one, taking the next free name, so a workbook accumulates Regression, Regression (2), Regression (3) and so on. Nothing is overwritten, so reducing a model leaves the previous report in place for comparison. Each sheet holds:

  • the coefficient table, with standard errors, t statistics, p values and variance inflation factors
  • the ANOVA table, with sequential and adjusted sums of squares per term
  • the model summary, R squared and adjusted R squared, F and its significance
  • pure error and lack of fit, when the design has replicated settings
  • a prediction block where you type factor settings and read back the predicted response, its standard deviation, a prediction interval, and capability figures against specification limits you supply

The report is described in full on Regression Results for OLS, and in the logistic cases on Regression Results for Binary Logistic and Regression Results for Nominal Logistic.

The DOE Advisor can add plain-language findings to the sheet and mark unusual runs red on the design sheet. It is on by default and controlled from DOE Options. See The DOE Advisor.

See Also