Let’s assume that we have a non-linear model defined as follows:

\[\begin{equation} Y_{i}=\beta_{0}+\beta_{1}t_{i1}+\beta_{2}t_{i,2}^{2}+\varepsilon_{i}\end{equation}\]

where \(i\in\{1,2,...,n\}\)

such a model describes the distance as a function of both a linear variable (time) \(t_{i1}\) and a quadratic variable (time squared) \(t_{i2}\). We can rewrite the previous model as a linear model as follows:

\[\begin{equation}Y_{i}=\beta_{0}+\beta_{1}X_{i1}+\beta_{i2}X_{2}+\varepsilon_{i} \end{equation}\]

where \(X_{i1}=t_{1t}\) and \(X_{i2}=t^{2}_{i2}\)

In this model we’d like to know the exact values of the betas. A good approach to estimate the betas is to find the betas that minimizes the square value of the error measure (\(\varepsilon_{i}\)) for each \(i\):

\[\min\varepsilon_{i}^{2}\equiv\min_{\beta_{1},\beta_2}\sum_{i}^{n}\{Y_{1}-(\beta_{0}+\beta_{1}X_{i1}+\beta_{2}X_{i2})\}^{2}\]

Then we can get the derivatives of the above equation equating to zero and solve for \(\beta_{1}\) and \(\beta_{2}\). But one thing that linear models and matrix algebra permit us to do is to write down general formulas, general algorithms to find these betas generally for any linear model.

We can also represent Bernoulli populations with linear models assuming the following linear model:

\[Y_{1}=\beta_{0}+\beta_{1}x_{i1}+\varepsilon_{i}\]

install.packages("UsingR")
trying URL 'https://cran.rstudio.com/bin/macosx/contrib/4.1/UsingR_2.0-7.tgz'
Content type 'application/x-gzip' length 2083286 bytes (2.0 MB)
==================================================
downloaded 2.0 MB

The downloaded binary packages are in
    /var/folders/50/m2w_4_3n0k171fw0tkb7w05c0000gn/T//RtmpLyhrcg/downloaded_packages
library(UsingR)
Loading required package: MASS
Loading required package: HistData
Loading required package: Hmisc
Loading required package: lattice
Loading required package: survival
Loading required package: Formula
Loading required package: ggplot2

Attaching package: ‘Hmisc’

The following objects are masked from ‘package:base’:

    format.pval, units


Attaching package: ‘UsingR’

The following object is masked from ‘package:survival’:

    cancer
data("father.son",package="UsingR")
summary(father.son)
    fheight         sheight     
 Min.   :59.01   Min.   :58.51  
 1st Qu.:65.79   1st Qu.:66.93  
 Median :67.77   Median :68.62  
 Mean   :67.69   Mean   :68.68  
 3rd Qu.:69.60   3rd Qu.:70.47  
 Max.   :75.43   Max.   :78.36  
mean(father.son$sheight) #1st question (What is the average height of the sons?)
[1] 68.68407
plot(father.son)

Using the father.son dataset described above, we want to know the expected height of sons if we condition on the father being 71 inches. Create a list of son heights for sons that have fathers with heights of 71 inches (round to the nearest inch)

#install.packages("dplyr")
#library(dplyr)
fheight.r<-round(father.son$fheight)
father.son.r<-data.frame(fheight.r,father.son$sheight)
father.son.fil<-filter(father.son.r,fheight.r==70)
mean(father.son.fil$father.son.sheight)
[1] 69.76845
LS0tCnRpdGxlOiAiSU5UUk9EVUNUSU9OIgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgoKTGV0J3MgYXNzdW1lIHRoYXQgd2UgaGF2ZSBhIG5vbi1saW5lYXIgbW9kZWwgZGVmaW5lZCBhcyBmb2xsb3dzOgoKJCRcYmVnaW57ZXF1YXRpb259IFlfe2l9PVxiZXRhX3swfStcYmV0YV97MX10X3tpMX0rXGJldGFfezJ9dF97aSwyfV57Mn0rXHZhcmVwc2lsb25fe2l9XGVuZHtlcXVhdGlvbn0kJAoKd2hlcmUgJGlcaW5cezEsMiwuLi4sblx9JAoKc3VjaCBhIG1vZGVsIGRlc2NyaWJlcyB0aGUgZGlzdGFuY2UgYXMgYSBmdW5jdGlvbiBvZiBib3RoIGEgbGluZWFyIHZhcmlhYmxlICh0aW1lKSAkdF97aTF9JCBhbmQgYSBxdWFkcmF0aWMgdmFyaWFibGUgKHRpbWUgc3F1YXJlZCkgJHRfe2kyfSQuIFdlIGNhbiByZXdyaXRlIHRoZSBwcmV2aW91cyBtb2RlbCBhcyBhIGxpbmVhciBtb2RlbCBhcyBmb2xsb3dzOgoKJCRcYmVnaW57ZXF1YXRpb259WV97aX09XGJldGFfezB9K1xiZXRhX3sxfVhfe2kxfStcYmV0YV97aTJ9WF97Mn0rXHZhcmVwc2lsb25fe2l9IFxlbmR7ZXF1YXRpb259JCQKCndoZXJlICRYX3tpMX09dF97MXR9JCBhbmQgJFhfe2kyfT10XnsyfV97aTJ9JAoKSW4gdGhpcyBtb2RlbCB3ZSdkIGxpa2UgdG8ga25vdyB0aGUgZXhhY3QgdmFsdWVzIG9mIHRoZSBiZXRhcy4gQSBnb29kIGFwcHJvYWNoIHRvIGVzdGltYXRlIHRoZSBiZXRhcyBpcyB0byBmaW5kIHRoZSBiZXRhcyB0aGF0IG1pbmltaXplcyB0aGUgc3F1YXJlIHZhbHVlIG9mIHRoZSBlcnJvciBtZWFzdXJlICgkXHZhcmVwc2lsb25fe2l9JCkgZm9yIGVhY2ggJGkkOgoKJCRcbWluXHZhcmVwc2lsb25fe2l9XnsyfVxlcXVpdlxtaW5fe1xiZXRhX3sxfSxcYmV0YV8yfVxzdW1fe2l9XntufVx7WV97MX0tKFxiZXRhX3swfStcYmV0YV97MX1YX3tpMX0rXGJldGFfezJ9WF97aTJ9KVx9XnsyfSQkCgpUaGVuIHdlIGNhbiBnZXQgdGhlIGRlcml2YXRpdmVzIG9mIHRoZSBhYm92ZSBlcXVhdGlvbiBlcXVhdGluZyB0byB6ZXJvIGFuZCBzb2x2ZSBmb3IgJFxiZXRhX3sxfSQgYW5kICRcYmV0YV97Mn0kLiBCdXQgb25lIHRoaW5nIHRoYXQgbGluZWFyIG1vZGVscyBhbmQgbWF0cml4IGFsZ2VicmEgcGVybWl0IHVzIHRvIGRvIGlzIHRvIHdyaXRlIGRvd24gZ2VuZXJhbCBmb3JtdWxhcywgZ2VuZXJhbCBhbGdvcml0aG1zIHRvIGZpbmQgdGhlc2UgYmV0YXMgZ2VuZXJhbGx5IGZvciBhbnkgbGluZWFyIG1vZGVsLgoKV2UgY2FuIGFsc28gcmVwcmVzZW50IEJlcm5vdWxsaSBwb3B1bGF0aW9ucyB3aXRoIGxpbmVhciBtb2RlbHMgYXNzdW1pbmcgdGhlIGZvbGxvd2luZyBsaW5lYXIgbW9kZWw6CgokJFlfezF9PVxiZXRhX3swfStcYmV0YV97MX14X3tpMX0rXHZhcmVwc2lsb25fe2l9JCQKCi0gaWYgJHhfe2kxfT0xJCBpZiBhIGNlcnRhaW4gY29uZGl0aW9uIG1ldAoKLSBpZiAkeF97aTF9PTAkIGlmIGEgY2VydGFpbiBjb25kaXRpb24gZG9uJ3QgbWV0CgoKYGBge3J9CiMxc3QgRXhhbXBsZToKaW5zdGFsbC5wYWNrYWdlcygiVXNpbmdSIikKbGlicmFyeShVc2luZ1IpCmRhdGEoImZhdGhlci5zb24iLHBhY2thZ2U9IlVzaW5nUiIpCnN1bW1hcnkoZmF0aGVyLnNvbikKbWVhbihmYXRoZXIuc29uJHNoZWlnaHQpICMxc3QgcXVlc3Rpb24gKFdoYXQgaXMgdGhlIGF2ZXJhZ2UgaGVpZ2h0IG9mIHRoZSBzb25zPykKcGxvdChmYXRoZXIuc29uKQpgYGAKClVzaW5nIHRoZSBmYXRoZXIuc29uIGRhdGFzZXQgZGVzY3JpYmVkIGFib3ZlLCB3ZSB3YW50IHRvIGtub3cgdGhlIGV4cGVjdGVkIGhlaWdodCBvZiBzb25zIGlmIHdlIGNvbmRpdGlvbiBvbiB0aGUgZmF0aGVyIGJlaW5nIDcxIGluY2hlcy4gQ3JlYXRlIGEgbGlzdCBvZiBzb24gaGVpZ2h0cyBmb3Igc29ucyB0aGF0IGhhdmUgZmF0aGVycyB3aXRoIGhlaWdodHMgb2YgNzEgaW5jaGVzIChyb3VuZCB0byB0aGUgbmVhcmVzdCBpbmNoKQpgYGB7cn0KI2luc3RhbGwucGFja2FnZXMoImRwbHlyIikKI2xpYnJhcnkoZHBseXIpCmZoZWlnaHQucjwtcm91bmQoZmF0aGVyLnNvbiRmaGVpZ2h0KQpmYXRoZXIuc29uLnI8LWRhdGEuZnJhbWUoZmhlaWdodC5yLGZhdGhlci5zb24kc2hlaWdodCkKZmF0aGVyLnNvbi5maWw8LWZpbHRlcihmYXRoZXIuc29uLnIsZmhlaWdodC5yPT03MCkKbWVhbihmYXRoZXIuc29uLmZpbCRmYXRoZXIuc29uLnNoZWlnaHQpCmBgYAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg==