Filter löschen
Filter löschen

How do i find repeating sample with different value in data and replace the value with its average?

3 Ansichten (letzte 30 Tage)
In the file "air.mat" , contains a matrix named data, in which the first column is the energy (MeV) and the second column
represents the connected mass attenuation coefficient.
There is two same energy values with different mass attenuation coefficient. How do i find those same energy values and replace it with the average of the mass attenuation coefficient of both energies.
I tried using unique() but it doesnt give the output that i need i need
x=load("air.mat");
c=unique(x.data(:,1))
c = 37×1
0.0010 0.0015 0.0020 0.0030 0.0032 0.0040 0.0050 0.0060 0.0080 0.0100
This is just removing the repeating energy value from data.

Akzeptierte Antwort

Simon Chan
Simon Chan am 12 Feb. 2022
Try this:
T = table(data(:,1),data(:,2),'VariableNames',{'Energy','mass_attentuation_coefficient'});
G = groupsummary(T,"Energy","mean");

Weitere Antworten (0)

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by