Generate a logarithmic regression of xlsdata and plot it
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have the given data in the xls file. I tried to convert the Var1 and Var2 to log10 values, and then do a regression with the given command. But I get an error.
Incorrect number or types of inputs or outputs for function log10.
Error in uppgift44 (line 2)
X=log10('Var1'); Y=log10('Var2'); % convert both variables to log's
P=readtable('data')
X=log10('Var1'); Y=log10('Var2'); % convert both variables to log's
b=polyfit(X,Y,1); % estimate coefficients
yhat=10.^[polyval(b,[X(1) X(end)])]; % evaluate at end points
loglog(x,y)
hold on
loglog([x(1) x(end)],yhat) % add fitted line
plot(ans)
Where is the error here?
Thanks!
0 commentaires
Réponse acceptée
Dyuman Joshi
le 22 Fév 2024
That is not how you access data inside Tables. Go through this for more information - Access Data in Tables
%% Provide the filename with extension
P=readtable('data1.xlsx');
%% Use dot indexing to access the data
X=log10(P.Var1);
Y=log10(P.Var2); % convert both variables to log's
b=polyfit(X,Y,1); % estimate coefficients
yhat=10.^[polyval(b,[X(1) X(end)])]; % evaluate at end points
%% Variable names are capital
figure
loglog(X,Y,'r')
hold on
plot([X(1) X(end)],yhat,'b') % add fitted line
8 commentaires
Dyuman Joshi
le 24 Fév 2024
The red line is the plot of the data you have, and the blue line is the corresponding linear fit to the data. You can infer that from the code.
Read the description of the polyfit function - https://in.mathworks.com/help/matlab/ref/polyfit.html#description
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!