Question: Write a C/C++ program: linear regression least-squares method Purpose: Fit data using non-linear regression least-squares method for an exponential function. Discussion: A hospital administrator wished
Write a C/C++ program:
linear regression least-squares method
Purpose: Fit data using non-linear regression least-squares method for an exponential function.
Discussion: A hospital administrator wished to develop a regression model for predicting the degree of long-term recovery after discharge from the hospital for severely injured patients. The predictor variable to be utilized is number of days of hospitalization (X), and the response variable is a prognostic index for long- term recovery (Y), with large values of the index reflecting a good prognosis. Data for 15 patients were studied and are presented in a file Related earlier studies reported in the literature found the relationship between the predictor variable and the response variable to be exponential. Hence, it was decided to investigate the appropriateness of the two-parameter nonlinear exponential regression mode.
| Days | Prognostic_index |
| 2 | 54 |
| 5 | 50 |
| 7 | 45 |
| 10 | 37 |
| 14 | 35 |
| 19 | 25 |
| 26 | 20 |
| 31 | 16 |
| 34 | 18 |
| 38 | 13 |
| 45 | 8 |
| 52 | 11 |
| 53 | 8 |
| 60 | 4 |
| 65 | 6 |
For the data in the file, the function has the form = where and are constants that are determined from the fit. Until the user wishes to quit the application should do the following:
- Read data from a file
- Print the data
- Print report summary of the data (mean, median, range, mood, and standard Deviation)
- Do an exponential fit and print the regression equation
- Compute how accurate your exponential fit (Standard Error)
- Offer an interpolation/extrapolation of both the prognostic index.
The exponential data has to be transformed to have a linear relation. Then find the value of a and b using the equations given in your lectures slides.
Offer the user the option of interpolating / extrapolating the data to find what the prognostic index will be in other days.
Example Output
Example output is given below. Yours should be the same.
Note that your assignment might be tested with different interpolation / extrapolation parameters than those shown.
LEAST_SQUARES LINEAR REGRESSION
MENU
- Exponential Fit
- Quit
1
Please enter the name of the file to open: data.txt Days Prognostic_index
2 54
5 50
7 45
10 37
14 35
19 25
26 20
31 16
34 18
38 13
45 8
52 11
53 8
60 4
65 6
There are 15 records.
Data summary (Prognostic index):
Mean =??? Median=??? Range=???
Mode=???
Standard Deviation=???
Linear Regression Fit: Prognostic_index = ???*exp -???*days Stander Error=???
MENU
- Extrapolation
- Main Menu 1
Please enter the days to extrapolate to: 33 days = 33
Prognostic_index = 16.2
MENU
- Extrapolation
- Main Menu 1
Please enter the days to extrapolate to: 73 days = 73
Prognostic_index = 3.54
MENU
- Extrapolation
- Main Menu 2
LEAST_SQUARES LINEAR REGRESSION MENU
- Exponential Fit
- Quit
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
