CST 8233 Assignment #2 Linear Regression Fit to Data solved

$35.00

Category: You will receive a download link of the .ZIP file upon Payment

Description

5/5 - (1 vote)

Purpose: Fit data using linear regression least squares method for both a Linear function and a Power
Law function.
Algorithm. Write a program named that will enable the user to fit data to both a linear and a power law
function.
Here is a data set for CO2 levels in the World over a range of years.
year 1960 1965 1970 1975 1980 1985 1990 1995 2000 2005
CO2 level ppm 316.5 320 325 331 338 346 353 360 368.5 378
The supplied data file you will use for the fits, CO2.txt shown below, is the same data as above but 1960
has been subtracted from each of the years and 316.5 has been subtracted from each CO2 level. In other
words, 1960 is the start year and levels are measured relative to what it was in that year. This is done to
reduce the size of products and sums that occur in the least-squares formulas and increase to accuracy of
the results.
CO2.txt
1. Fit to a Linear function y = mx + c
In the linear case you are fitting the CO2.txt data to the straight line y = mx + c, where y represents the
CO2 level and x represents the year in the file CO2.txt and m and c are constants. Solve these equations
using the least-squares linear regression formulas in the lecture notes to get to get solutions for m and c.
Using the fit, offer the user the option of interpolating/extrapolating the data by including the (1960, 316.5)
offsets to the formula you calculate.
2. Fit to a power law y = ax
b
.
In this case you are fitting the data to the power law y = ax
b where y represents the CO2 level and x
represents the year in the file CO2.txt and a and b are constants. To do a linear regression the data need
to be transformed as dicussed in class notes. With the transformed data solve the least-squares linear
regression formulas in the lecture notes to get solutions for a and b. Then using the power law formula,
offer the user the option of interpolating/ extrapolating the data by including the (1960, 316.5) offsets to the
formula you calculate.
Set up a Win32 console project in Visual Studio 2015 with the name ass1. In a file named ass1.cpp using
the C (or/C++) programming language, write the code to implement the application, as described above,.
Example output is given at the end. Yours should be the same. Note than your assignment might be
tested with a different data file with a different number of entries and with different
interpolation/extrapolation parameters than those shown.
See the Marking Sheet for how you can lose marks, but you definitely lose 60% or more if:
 your application won’t build in Visual Studio 2015
 your application crashes in normal operation or with a different data file
 I can’t build it because you submitted the wrong files or the files are missing, even if it’s an honest
mistake – 100% deduction.
year 5 10 15 20 25 30 35 40 45
CO2 level ppm 3.5 8.5 14.5 21.5 29.5 36.5 43.5 52 61.5
CST 8233 – F18 – Assignment #2 A.Tyler
2
What to Submit : Use Brightspace to submit this assignment as a zip file (not RAR, not 9zip, not 7
zip) containing only the source code file (ass2.cpp). The name of the zipped folder must contain your
name as a prefix so that I can identify it, for example using my name the file would be
tyleraAss2CST8233.zip. It is also vital that you include the Cover Information (as specified in the
Submission Standard) as a file header (you don’t need to include an additional separate file header) in
your source file so the file can be identified as yours. Use comment lines in the file to include the
information.
There is a late penalty of 25% per day – even one minute is counted late.
Don’t send me the file as an email attachment – it will get 0.
Example Output
LEAST_SQUARES LINEAR REGRESSION
MENU
1. Linear Fit
2. Power Law Fit
3. Quit
2
Please enter the name of the file to open: CO2.txt
There are 9 records.
y = 0.43x^1.31
MENU
1. Interpolate/Extrapolate
2. Main Menu
1
Please enter the year to interpolate/extrapolate to: 2020
The power law interpolated/extrapolated CO2 level in the year 2020.0 is 405.99
MENU
1. Interpolate/Extrapolate
2. Main Menu
1
Please enter the year to interpolate/extrapolate to: 1968
The power law interpolated/extrapolated CO2 level in the year 1968.0 is 322.94
MENU
1. Interpolate/Extrapolate
2. Main Menu
2
LEAST_SQUARES LINEAR REGRESSION
MENU
1. Linear Fit
2. Power Law Fit
3. Quit
1
Please enter the name of the file to open: CO2.txt
There are 9 records.
y = 1.45*x + -6.18
MENU
1. Interpolate/Extrapolate
2. Main Menu
1
Please enter the year to interpolate/extrapolate to: 2020
The linear interpolated/extrapolated CO2 level in the year 2020.0 is 397.42
MENU
1. Interpolate/Extrapolate
2. Main Menu
1
Please enter the year to interpolate/extrapolate to: 1968
The linear interpolated/extrapolated CO2 level in the year 1968.0 is 321.93
MENU
1. Interpolate/Extrapolate
2. Main Menu