How to find these features for large number of data?

조회 수: 2(최근 30일)
Lala0099 7 Mar 2019
댓글: Kevin Phung 10 Mar 2019
Dear People,
I have 80 datasheets, and within each datasheet I have 3 different group. In each group I have 400 measurements.
I have to measure the root mean square value, Standard deviation, skewness etc.
But I have not got a clue how to do it for these many data point.
I started by transforming each coloumn into an array ( transposed it) and then managed to get rms. But I am wondering if there is a more efficient way of doing it.
If you guys have any suggestions please let me know.
My code:
X = transpose(table2array( reachandretrieve00(:,3)));
r = rms(X)
I have attached one of my datasheets.

댓글을 달려면 로그인하십시오.

채택된 답변

Kevin Phung 7 Mar 2019
i'm not sure how you're storing each datasheet, but if they are all in cell arrays (1 x 80 cell array, where each cell array is a datasheet):
rms_val = [];
for i = 1:numel(datasheets) % for each datasheet
for j = 1:size(datasheets{i},2) % for each column in each datasheet
rms_val(i,j) = rms(datasheets{i}{:,j}) %for each datasheet, store rms value into a row vector
end
end

댓글 수: 4

표시 이전 댓글 수: 1
Kevin Phung 8 Mar 2019
so datasheet{1}{:,2} accesses the first datasheet, and the second column.
i am not too sure what you mean by filtering, but lets say i want to grab all positive values from this column...then I would do:
datasheet{1}{:,2}(datasheet{1}{:,2} > 0) %logical indexing
note that the curly brackey notation is a means of accessing information within a cell array.
example:
a = {[1 2 3 4 5]}; % a is a 1x1 cell array
a{1}(a{1}>2) %this would give me 3 4 5
Lala0099 10 Mar 2019
Thank you for helping me! It worked :)
Kevin Phung 10 Mar 2019
youre welcome!

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by