Why is the intercept typed in as a 1 in stats packages (R, python)Advice on a good production level SPC (statistical process control) package?Understanding what Dassault iSight is doing?What languages are commonly used in medical statistics?What statistical software does NOT provide for Classification and Regression modelsHow must one handle ordinal independent variables when modeling interactions?Predicting with GLM using Gaussian distributed dataStandard error for rolling regressionSlope interpretation in simple linear regressionAlternatives to Journal of Statistical Software?Non-straight lines in random intercept random slope plots
Strong empirical falsification of quantum mechanics based on vacuum energy density
How do you respond to a colleague from another team when they're wrongly expecting that you'll help them?
Using substitution ciphers to generate new alphabets in a novel
What is the evidence for the "tyranny of the majority problem" in a direct democracy context?
How to cover method return statement in Apex Class?
Redundant comparison & "if" before assignment
Non-trope happy ending?
Is there a RAID 0 Equivalent for RAM?
I'm the sea and the sun
Hero deduces identity of a killer
Biological Blimps: Propulsion
Is aluminum electrical wire used on aircraft?
Quoting Keynes in a lecture
What if a revenant (monster) gains fire resistance?
Calculating total slots
Can I still be respawned if I die by falling off the map?
Why does the Sun have different day lengths, but not the gas giants?
Is there a way to get `mathscr' with lower case letters in pdfLaTeX?
15% tax on $7.5k earnings. Is that right?
Yosemite Fire Rings - What to Expect?
Sums of entire surjective functions
Does an advisor owe his/her student anything? Will an advisor keep a PhD student only out of pity?
Are Captain Marvel's powers affected by Thanos' actions in Infinity War
Can a College of Swords bard use a Blade Flourish option on an opportunity attack provoked by their own Dissonant Whispers spell?
Why is the intercept typed in as a 1 in stats packages (R, python)
Advice on a good production level SPC (statistical process control) package?Understanding what Dassault iSight is doing?What languages are commonly used in medical statistics?What statistical software does NOT provide for Classification and Regression modelsHow must one handle ordinal independent variables when modeling interactions?Predicting with GLM using Gaussian distributed dataStandard error for rolling regressionSlope interpretation in simple linear regressionAlternatives to Journal of Statistical Software?Non-straight lines in random intercept random slope plots
$begingroup$
When using statistics software, When defining your linear models, why is the intercept typed in as a 1, rather than "const" or "intercept" or something. What significance does 1 have?
Is there some historic reason? Or is this logical in some way I am failing to grasp? The intercept could very well be any number.
Example from statsmodels library in python:
model = smf.ols('Height ~ 1', data = height_sample_data)
I know lmer package for R is very similar.
regression software intercept
$endgroup$
add a comment |
$begingroup$
When using statistics software, When defining your linear models, why is the intercept typed in as a 1, rather than "const" or "intercept" or something. What significance does 1 have?
Is there some historic reason? Or is this logical in some way I am failing to grasp? The intercept could very well be any number.
Example from statsmodels library in python:
model = smf.ols('Height ~ 1', data = height_sample_data)
I know lmer package for R is very similar.
regression software intercept
$endgroup$
5
$begingroup$
The intercept is the coefficient (which indeed could have any value), but what you enter into the regression program when you fit the model are not the coefficients, but the things you multiply the coefficients by in the regression equation (the $x$'s). What do you multiply the intercept by in the regression equation? (Note that $beta_0 times 1 = beta_0$.)
$endgroup$
– Glen_b♦
Mar 19 at 4:31
add a comment |
$begingroup$
When using statistics software, When defining your linear models, why is the intercept typed in as a 1, rather than "const" or "intercept" or something. What significance does 1 have?
Is there some historic reason? Or is this logical in some way I am failing to grasp? The intercept could very well be any number.
Example from statsmodels library in python:
model = smf.ols('Height ~ 1', data = height_sample_data)
I know lmer package for R is very similar.
regression software intercept
$endgroup$
When using statistics software, When defining your linear models, why is the intercept typed in as a 1, rather than "const" or "intercept" or something. What significance does 1 have?
Is there some historic reason? Or is this logical in some way I am failing to grasp? The intercept could very well be any number.
Example from statsmodels library in python:
model = smf.ols('Height ~ 1', data = height_sample_data)
I know lmer package for R is very similar.
regression software intercept
regression software intercept
edited Mar 19 at 10:01
kjetil b halvorsen
31.3k984224
31.3k984224
asked Mar 19 at 4:00
Adam BAdam B
21418
21418
5
$begingroup$
The intercept is the coefficient (which indeed could have any value), but what you enter into the regression program when you fit the model are not the coefficients, but the things you multiply the coefficients by in the regression equation (the $x$'s). What do you multiply the intercept by in the regression equation? (Note that $beta_0 times 1 = beta_0$.)
$endgroup$
– Glen_b♦
Mar 19 at 4:31
add a comment |
5
$begingroup$
The intercept is the coefficient (which indeed could have any value), but what you enter into the regression program when you fit the model are not the coefficients, but the things you multiply the coefficients by in the regression equation (the $x$'s). What do you multiply the intercept by in the regression equation? (Note that $beta_0 times 1 = beta_0$.)
$endgroup$
– Glen_b♦
Mar 19 at 4:31
5
5
$begingroup$
The intercept is the coefficient (which indeed could have any value), but what you enter into the regression program when you fit the model are not the coefficients, but the things you multiply the coefficients by in the regression equation (the $x$'s). What do you multiply the intercept by in the regression equation? (Note that $beta_0 times 1 = beta_0$.)
$endgroup$
– Glen_b♦
Mar 19 at 4:31
$begingroup$
The intercept is the coefficient (which indeed could have any value), but what you enter into the regression program when you fit the model are not the coefficients, but the things you multiply the coefficients by in the regression equation (the $x$'s). What do you multiply the intercept by in the regression equation? (Note that $beta_0 times 1 = beta_0$.)
$endgroup$
– Glen_b♦
Mar 19 at 4:31
add a comment |
1 Answer
1
active
oldest
votes
$begingroup$
It is logical, once you consider the matrix notation that your formula will be translated into internally. In the matrix, the non-constant predictors will be translated into (one or more) columns, and the intercept will be translated into a column consisting entirely of ones.
For instance, in R you would write a very simple OLS as:
lm(z~1+x+y)
In matrix notation, this would be translated into a model
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix 1 & x_1 & y_1 \ 1 & x_2 & y_2 \ vdots & vdots & vdots \ 1 & x_n & y_n endpmatrix
beginpmatrix beta_0 \ beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
and now you see where the $1$ comes from.
Actually, you could leave the 1+
out, since R will always presume you want to include an intercept, so this is completely equivalent to
lm(z~x+y).
However, if you want to suppress the intercept, you would write something like
lm(z~x+y-1),
which would be translated into a matrix without a 1 column:
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix x_1 & y_1 \ x_2 & y_2 \ vdots & vdots \ x_n & y_n endpmatrix
beginpmatrix beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
$endgroup$
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
return StackExchange.using("mathjaxEditing", function ()
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
);
);
, "mathjax-editing");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "65"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstats.stackexchange.com%2fquestions%2f398259%2fwhy-is-the-intercept-typed-in-as-a-1-in-stats-packages-r-python%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
It is logical, once you consider the matrix notation that your formula will be translated into internally. In the matrix, the non-constant predictors will be translated into (one or more) columns, and the intercept will be translated into a column consisting entirely of ones.
For instance, in R you would write a very simple OLS as:
lm(z~1+x+y)
In matrix notation, this would be translated into a model
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix 1 & x_1 & y_1 \ 1 & x_2 & y_2 \ vdots & vdots & vdots \ 1 & x_n & y_n endpmatrix
beginpmatrix beta_0 \ beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
and now you see where the $1$ comes from.
Actually, you could leave the 1+
out, since R will always presume you want to include an intercept, so this is completely equivalent to
lm(z~x+y).
However, if you want to suppress the intercept, you would write something like
lm(z~x+y-1),
which would be translated into a matrix without a 1 column:
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix x_1 & y_1 \ x_2 & y_2 \ vdots & vdots \ x_n & y_n endpmatrix
beginpmatrix beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
$endgroup$
add a comment |
$begingroup$
It is logical, once you consider the matrix notation that your formula will be translated into internally. In the matrix, the non-constant predictors will be translated into (one or more) columns, and the intercept will be translated into a column consisting entirely of ones.
For instance, in R you would write a very simple OLS as:
lm(z~1+x+y)
In matrix notation, this would be translated into a model
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix 1 & x_1 & y_1 \ 1 & x_2 & y_2 \ vdots & vdots & vdots \ 1 & x_n & y_n endpmatrix
beginpmatrix beta_0 \ beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
and now you see where the $1$ comes from.
Actually, you could leave the 1+
out, since R will always presume you want to include an intercept, so this is completely equivalent to
lm(z~x+y).
However, if you want to suppress the intercept, you would write something like
lm(z~x+y-1),
which would be translated into a matrix without a 1 column:
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix x_1 & y_1 \ x_2 & y_2 \ vdots & vdots \ x_n & y_n endpmatrix
beginpmatrix beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
$endgroup$
add a comment |
$begingroup$
It is logical, once you consider the matrix notation that your formula will be translated into internally. In the matrix, the non-constant predictors will be translated into (one or more) columns, and the intercept will be translated into a column consisting entirely of ones.
For instance, in R you would write a very simple OLS as:
lm(z~1+x+y)
In matrix notation, this would be translated into a model
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix 1 & x_1 & y_1 \ 1 & x_2 & y_2 \ vdots & vdots & vdots \ 1 & x_n & y_n endpmatrix
beginpmatrix beta_0 \ beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
and now you see where the $1$ comes from.
Actually, you could leave the 1+
out, since R will always presume you want to include an intercept, so this is completely equivalent to
lm(z~x+y).
However, if you want to suppress the intercept, you would write something like
lm(z~x+y-1),
which would be translated into a matrix without a 1 column:
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix x_1 & y_1 \ x_2 & y_2 \ vdots & vdots \ x_n & y_n endpmatrix
beginpmatrix beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
$endgroup$
It is logical, once you consider the matrix notation that your formula will be translated into internally. In the matrix, the non-constant predictors will be translated into (one or more) columns, and the intercept will be translated into a column consisting entirely of ones.
For instance, in R you would write a very simple OLS as:
lm(z~1+x+y)
In matrix notation, this would be translated into a model
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix 1 & x_1 & y_1 \ 1 & x_2 & y_2 \ vdots & vdots & vdots \ 1 & x_n & y_n endpmatrix
beginpmatrix beta_0 \ beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
and now you see where the $1$ comes from.
Actually, you could leave the 1+
out, since R will always presume you want to include an intercept, so this is completely equivalent to
lm(z~x+y).
However, if you want to suppress the intercept, you would write something like
lm(z~x+y-1),
which would be translated into a matrix without a 1 column:
$$ beginpmatrix z_1 \ z_2 \ vdots \ z_n endpmatrix =
beginpmatrix x_1 & y_1 \ x_2 & y_2 \ vdots & vdots \ x_n & y_n endpmatrix
beginpmatrix beta_x \ beta_z endpmatrix
+beginpmatrix epsilon_1 \ epsilon_2 \ vdots \ epsilon_n endpmatrix,
$$
edited Mar 19 at 4:27
answered Mar 19 at 4:09
Stephan KolassaStephan Kolassa
47k7100175
47k7100175
add a comment |
add a comment |
Thanks for contributing an answer to Cross Validated!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstats.stackexchange.com%2fquestions%2f398259%2fwhy-is-the-intercept-typed-in-as-a-1-in-stats-packages-r-python%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
5
$begingroup$
The intercept is the coefficient (which indeed could have any value), but what you enter into the regression program when you fit the model are not the coefficients, but the things you multiply the coefficients by in the regression equation (the $x$'s). What do you multiply the intercept by in the regression equation? (Note that $beta_0 times 1 = beta_0$.)
$endgroup$
– Glen_b♦
Mar 19 at 4:31