# Connexions

You are here: Home » Content » Regression Analysis with MATLAB

### Recently Viewed

This feature requires Javascript to be enabled.

# Regression Analysis with MATLAB

Module by: Serhat Beyenir. E-mail the author

Summary: Basic curve fitting and linear regression.

## What is Regression Analysis?

Suppose we calculate some variable of interest, y, as a function of some other variable x. We call y the dependent variable and x the independent variable. For example, consider the data set below, taken from a simple experiment involving a vehicle, its velocity versus time is tabulated. In this case, velocity is a function of time, thus velocity is the dependent variable and the time is the independent variable.

Table 1: Vehicle velocity versus time.
Time [s] Velocity [m/s]
0 20
10 39
20 67
30 89
40 111
50 134
60 164
70 180
80 200

In its simplest form regression analysis involves fitting the best straight line relationship to explain how the variation in a dependent variable, y, depends on the variation in an independent variable, x. In our example above, once the relationship (in this case a linear relationship) has been estimated we can produce a linear equation in the following form:

y=mx+n y m x n
(1)

And once an analytic equation such as the one above has been determined, dependent variables at intermediate independent values can be computed.

## Performing Linear Regression

Regression analysis with MATLAB is easy. The MATLAB Basic Fitting GUI allows us to interactively to do "curve fitting" which is a method to arrive at the best "straight line" fit for linear equations or the best curve fit for a polynomial up to the tenth degree. The procedure to perform a curve fitting with MATLAB is as follows:

1. Input the variables,
2. Plot the data,
3. Initialize the Basic Fitting GUI,
4. Select the desired regression analysis parameters.

## Example 1

Using the data set above, determine the relationship between velocity and time.

First, let us input the variables (Workspace > New variable) as shown in the following figures.

Second, we will plot the data by typing in plot(time,velocity) at the MATLAB prompt. The following plot is generated, select Tools > Basic Fitting:

In the "Basic Fitting" window, select "linear" and "Show equations". The best fitting linear line along with the corresponding equation are displayed on the plot:

Now let us do another curve fitting and obtain an equation for the function. Using that equation, we can evaluate the function at a desired value with polyval.

## Example 2

The following is a collection of data for an iron-constantan thermocouple. 1

Table 2: Temperature [C] vs Voltage [mV]
Temperature [C] Voltage [mV]
50 2.6
100 6.7
150 8.8
200 11.2
300 17.0
400 22.5
500 26
600 32.5
700 37.7
800 41
900 48
1000 55.2
1. Plot a graph with Temperature as the independent variable.
2. Determine the equation of the relationship using the Basic Fitting tools.
3. Estimate the Voltage that corresponds to a Temperature of 650 C and 1150 C.

We will input the variables first:

Temp=[50;100;150;200;300;400;500;600;700;800;900;1000]
Voltage=[2.6;6.7;8.8;11.2;17;22.5;36;32.5;37.7;41;48;55.2]

To plot the graph, type in:

plot(Temp,Voltage)

We can now use the Plot Tools and Basic Fitting settings and determine the equation:

By clicking the right arrow twice at the bottom right corner on the Basic Fitting window, we can evaluate the function at a desired value. See the figure below which illustrates this process for the temperature value 1150 C.

Now let us check our answer with a technique we learned earlier. As displayed on the plot, we have obtained the following equation: y=0.053x+1.4 y 0.053 x 1.4 This equation can be entered as polynomial and evaluated at 650 and 1150 as follows:

>> p=[0.053,1.4]

p =

0.0530    1.4000

>> polyval(p,650)

ans =

35.8500

>> polyval(p,1150)

ans =

62.3500

## Summary of Key Points

1. Linear regression involves fitting the best straight line relationship to explain how the variation in a dependent variable, y, depends on the variation in an independent variable, x,
2. Basic Fitting GUI allows us to interactively perform curve fitting,
3. Some of the plot fits available are linear, quadratic and cubic functions,
4. Basic Fitting GUI can evaluate functions at given points.

## Footnotes

1. Engineering Fundamentals and Problem Solving by Arvid R. Eide, Roland Jenison, Larry L. Northup, Steven K. Mikelson , McGraw-Hill Higher Education. © 2007 p.114

## Content actions

### Give feedback:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

#### Definition of a lens

##### Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

##### What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

##### Who can create a lens?

Any individual member, a community, or a respected organization.

##### What are tags?

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks