
converting an excel formula into matlab
    조회 수: 13 (최근 30일)
  
       이전 댓글 표시
    
I've written the formulas out that I require in excel, but now I want to put these into matlab. 
The current matlab code I have is below, but I am struggling to convert column D in my excel file to code in matlab. Could anybody help?
resV = sqrt(vel(:,1).^2 +vel(:,2).^2 + vel(:,3).^2);
time = 1:1935804;
time = time';
GT = resV-mean(resV);
GT2 = GT.^2;
RMS = sqrt(
댓글 수: 0
채택된 답변
  Wan Ji
      
 2021년 8월 16일
        Hi, friend, I have translated your excel function to matlab command line. 
clc;clear
a = readtable('C-RMSfluctuation.xlsx','PreserveVariableNames',true);
cols = a.Properties.VariableNames;
a{:,cols{3}} = a{:,cols{2}}.^2;
a{:,cols{4}} = sqrt(cumsum(a{:,cols{3}})./a{:,cols{1}});
writetable(a,'C-RMSfluctuation_New.xlsx') % strore the result in a new xlsx file
The result table is  shown like this

댓글 수: 2
  Wan Ji
      
 2021년 8월 16일
				If you want to totally implement your idea with matlab, then:
resV = sqrt(vel(:,1).^2 +vel(:,2).^2 + vel(:,3).^2);
time = 1:1935804;
time = time';
GT = resV-mean(resV);
GT2 = GT.^2;
col_4 = sqrt(cumsum(GT2)./time);
a = table(time, col_4);
writetable(a,'NewTable.xlsx')
추가 답변 (1개)
  dpb
      
      
 2021년 8월 16일
        resV = vecnorm(vel,2,2);            % 2-norm by row
time = 1:1935804.';                 % dunno what time represents, use a timetable instead, maybe?
GT = detrend(resV);                 % again, use MATLAB-supplied function
RMS = rms(GT);                      % and yet again, builtin guessing is what wanted rms of...
It's daunting to find all the functions that are available initially, granted...just takes some time.
The venerable lookfor command is still valuable if you have an idea of what you want but don't know the name...
참고 항목
카테고리
				Help Center 및 File Exchange에서 Data Export to MATLAB에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


