how to take average with specific condition and write to excel file again ?

조회 수: 3 (최근 30일)

I had a excel file testM.xls data size(45*7)(as shown in Sheet1), first column shows the time and rest of the columns shows the values in 15 min interval for each hours. Now I want to take average of 4 values (for hourly basis data calculation) from corresponding hours and write there in excel file (as shown in Sheet2).

    % So Sheet2 data is calculated as:
    % for column 2nd of Sheet2: 
     B(2)=4.25        %average of values [B(2):B(5)] from Sheet1;
     B(3)=6        %average of values [B(6):B(9)] from Sheet1;
 % and so on till 
     B(12)=5      %average of values [B(42):B(45)] from Sheet1

Then how can I find using matlab for loop for all columns to find out the values hourly basis. Thanks

채택된 답변

ANKUR KUMAR
ANKUR KUMAR 2018년 10월 1일
clc
clear
A=xlsread('testM.xls');
AA=A(:,2:end);
AAA=squeeze(nanmean(reshape(AA,4,[],6),1))
xlswrite('testM.xls',[[0:10]' AAA],'sheet3','A1')
  댓글 수: 3
ANKUR KUMAR
ANKUR KUMAR 2018년 10월 2일
Accept the answer if it helps you.
MUKESH KUMAR
MUKESH KUMAR 2018년 10월 2일
Thanks for your support and its very short code and working.

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Spreadsheets에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by