Excluding elements from array

14 Ansichten (letzte 30 Tage)
Nicolas
Nicolas am 30 Mär. 2024
Bearbeitet: Voss am 30 Mär. 2024
I need help trying to exclude values past position 19 from an array of 295. I have tried using the exlude command but was unable to understand the syntax. The array is converted from a table of data into StrainA. Then the data is checked to see at which point the graph is non-linear. I then only want to graph the regression line for that data. WhennonLinear = 19 for this data set. I cannot send the data file.
Example:
Force = TensileTestData(:,7);
Area = 4 * .25;
Stress = Force ./ Area;
Strain = TensileTestData(:,6);
StrainA= table2array(Strain);
StressA =table2array(Stress);
PositionNonLin = ischange(StressA,'linear', 'MaxNumChanges',1);
WhennonLinear = find(PositionNonLin==1);
RegStrainA = exclude(StrainA,[:,WhennonLinea:end]);
Regression = fitlm(RegStrainA,StressA);
figure(1)
hold on
scatter(StrainA, StressA)
plot (Regression)
title('Tensile Test')
xlabel("Strain")
ylabel("Stress")
hold off
  1 Kommentar
Voss
Voss am 30 Mär. 2024
Bearbeitet: Voss am 30 Mär. 2024
By the way, you can get the values out of the table directly by using curly braces instead of parentheses:
Force = TensileTestData{:,7};
Area = 4 * .25;
StressA = Force ./ Area;
StrainA = TensileTestData{:,6};
Then you can omit the table2array lines.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Voss
Voss am 30 Mär. 2024
WhennonLinear = find(PositionNonLin==1);
Regression = fitlm(StrainA(1:WhennonLinear-1),StressA(1:WhennonLinear-1));

Weitere Antworten (0)

Kategorien

Mehr zu Spline Postprocessing finden Sie in Help Center und File Exchange

Produkte


Version

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by