r is residual or error value between 2 points.Above mathematical function to find minimum residual function can be performed in R using
resid()
function.
Regression analysis is widely used in all types of business issues to perform a smart decision or predicting the future by altering a factor of their business.
In R language, Non-linear Least Square function is represented as –
Syntax:nls(formula, start)where,
formula indicates the model formula i.e., non-linear function start is a list of starting estimates
Note: To know about more optional parameters of nls(), use below command in R console –Example 1 : In this example, a non-linear function is taken and plotted on the graph as points.help("nls")
# defining x and y coordinates x < - seq( 0 , 10 , 0.1 )
y < - rnorm( 101 , 5 , 1 )
# output to be present as PNG file png( file = "nls.png" )
# Taking the model to get fitted m < - nls(y~a * x ^ 3 + b * x + c,
start = list (a = 1 , b = 2 , c = 1 ))
# plot the graph plot(x, y, col.lab = "darkgreen" ,
col.axis = "darkgreen" )
# plot the graph with new fitting line # or regression line lines(x, predict(m)) # saving the file dev.off() # print minimum residual or error value print ( sum (resid(m)^ 2 ))
|
[1] 106.4507Example 2 : In this example, below code is accepting a non-linear function as shown:
# creating sequence of 101 values from 0 to 100 x < - seq( 0 , 100 , 1 )
y< - ((runif( 1 , 10 , 20 ) * x) / (runif( 1 , 0 , 10 ) + x)) + rnorm( 101 , 0 , 1 )
# output to be present as PNG file png( file = "nls2.png" )
# using starting values in nls() function # to not get a warning m< - nls(y~a * x / (b + x), start = list (a = 1 , b = 2 ))
# goodness of fit cor(y, predict(m)) # minimized residual value sum (resid(m)^ 2 )
# plotting points on graph plot(x, y) # finding regression line lines(x, predict(m)) # saving the file dev.off() |
[1] 0.9622681 [1] 108.1481
Article Tags :
Recommended Articles