Solved

# a way of taking out very different value before calculating an average

Posted on 2006-03-24
185 Views
i'm programming in j# which receives GPS data.

I noticed that sometimes the GPS give very 'bad' or 'wrong' data from time to time.

I designed a program that calculates something according to the data it receives

but since sometime i get some bad datas i decided to take the average data of every 3 datas

for example, if i'm using the bearing, i would get three bearings and get the average of the three and use them as the value.

but sometimes one of the three values would read very incorrect data.

i was wandering if there was an algorithm of some sort to take out that bad data or give less weight to it when doing the average.

ex.

bearing1 = 39
bearing2 = 43
bearing3 = 05

when i get this, i don't want to average the three but actually get soemthing in between 39 and 43

cheers
0
Question by:shpark82

LVL 92

Expert Comment

if you know the valid range you could check each values falls inside it and ignore any value outside.
0

LVL 1

Author Comment

actually even the wrong values are always going to be in range between 0 to 360 but it is just that sometimes the reading is incorrect by quite a bit
0

LVL 92

Expert Comment

you need to know what is correct or incorrect, do u have a way of determing that. eg. how would u do ity manually
0

LVL 1

Author Comment

compare the three and see which of the three are completely different from others

for example if i had a sample of 10 readings

10,12,11,9,33,10,11,13,8,10

i would know that 33 is a bad read and therefore put much less weight on it when calculating the average of these

standard deviation or something? not sure
0

LVL 92

Accepted Solution

perhaps do two passes, first to take the average of all numbers
and the 2nd to strip out any numbers that are drastically outside that average
0

LVL 86

Assisted Solution

Take the median perhaps instead of the mean. (39 in your example)
0

LVL 86

Expert Comment

>>
first to take the average of all numbers
and the 2nd to strip out any numbers that are drastically outside that average
>>

If you're going to do it that way, you need to do it the other way around
0

LVL 30

Expert Comment

Are you using any standard J# GPS API?
0

LVL 1

Author Comment

i'm using J# express

free version from microsoft

how do you calculate median?

what is the difference between mean (average) and median?
0

LVL 86

Expert Comment

>>how do you calculate median?

Sort them and take the middle value

>>what is the difference ...

(See above)
0

## Join & Write a Comment Already a member? Login.

### Suggested Solutions

Title # Comments Views Activity
nested class vs inner class 5 38
Problem to setup 18 67
word0 challenge 3 33
solarwind tftp server 2 20
INTRODUCTION Working with files is a moderately common task in Java.  For most projects hard coding the file names, using parameters in configuration files, or using command-line arguments is sufficient.   However, when your application has vi…
After being asked a question last year, I went into one of my moods where I did some research and code just for the fun and learning of it all.  Subsequently, from this journey, I put together this article on "Range Searching Using Visual Basic.NET …
Viewers learn about how to reduce the potential repetitiveness of coding in main by developing methods to perform specific tasks for their program. Additionally, objects are introduced for the purpose of learning how to call methods in Java. Define …
This tutorial explains how to use the VisualVM tool for the Java platform application. This video goes into detail on the Threads, Sampler, and Profiler tabs.

#### 755 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

#### Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!