# calculating the mean of specific array using previous & next array

조회 수: 2(최근 30일)
Sehoon Chang 6 Apr 2020
답변: the cyclist 6 Apr 2020
Dear all,
I am trying to find a way to calculate the mean of specific array in a vector.
Within the vector "W", there are "outliers".
In order to adjust the values of the outliers, i wish to calculate the mean at the position of the outlier using previous (outlier-1) and next (outlier+1) value of outlier.
And once done, the calculate mean values should replace the value of outliers.
assumed values as an example;
W = randi([0 50], 1, 18000)
outliers = [1224 1370 1485 3001 ........ ]
Thanks all
##### 댓글 수: 1표시숨기기 없음
KALYAN ACHARJYA 6 Apr 2020

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

### 채택된 답변

the cyclist 6 Apr 2020
The variable outliers contains the indices to the outlier locations, right? Then
W(outliers) = (W(outliers-1) + W(outliers+1))/2;
will replace those locations with the mean of that locations nearest neighbors.
There are two scenarios where this simple formula will not work:
1. One could have outliers at two consecutive indices
2. The outlier could be at the first or last element of your array.
You'll need to provide more info on how you want to handle those special cases.

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

### Community Treasure Hunt

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

Start Hunting!

Translated by