calculate data based on previous values and replace it at negative and zeros values

조회 수: 1 (최근 30일)
there is different data in the column in excel (REACTIVE_Y_PH), which has some negative and zeros values also, these values should be replaced by calculating the average of previous data and replace them.
  댓글 수: 5
Image Analyst
Image Analyst 2018년 7월 4일
What were the "last" 5 values when the first few are to be replaced? There are no elements at indexes -4 to 0. Or did you mean the "last" ones at the other end of the array, like from vec(end-4:end)?
MUKESH KUMAR
MUKESH KUMAR 2018년 7월 4일
편집: MUKESH KUMAR 2018년 7월 4일
No, previous values of the column before that value, Like in the image, first 15 values in the second column are negative so make them positive and at 16th row '0' that will be replaced by previous 5 values average((11.5+9.2+9.2+6.9+4.6)/5).Similarly do for next values

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

답변 (1개)

KSSV
KSSV 2018년 7월 4일
[num,txt,raw] = xlsread('sample.xls') ;
data = cell2mat(cellfun(@str2num,txt(:,2),'un',0)) ;
%%fill negative and zeros
idx = data<=0 ;
data(idx) = NaN ;
data = fillmissing(data,'previous') ;

카테고리

Help CenterFile Exchange에서 Data Import from MATLAB에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by