แทนที่ค่าผิดปกติด้วยค่าเฉลี่ย


31

คำถามนี้ถามโดยเพื่อนของฉันที่ไม่เข้าใจอินเทอร์เน็ต ฉันไม่มีภูมิหลังด้านสถิติและฉันได้ทำการค้นหาข้อมูลในอินเทอร์เน็ตจากคำถามนี้

คำถามคือเป็นไปได้ไหมที่จะแทนที่ค่าผิดปกติด้วยค่าเฉลี่ย? ถ้าเป็นไปได้มีหนังสืออ้างอิง / วารสารเพื่อสำรองข้อความนี้หรือไม่?


25
แน่นอนว่าเป็นไปได้ที่จะทำเช่นนี้ แต่มันยากที่จะจินตนาการถึงสถานการณ์ที่เหมาะสม
Peter Flom - Reinstate Monica

2
มีคำตอบอีกต่อไปหลายคำแล้ว แต่การสรุปประโยคเดียวของ @Peter Flom นั้นไม่น่าจะสรุปได้
Nick Cox

4
ยังไม่มีคำตอบใดที่ชี้ให้เห็นถึงช้างในห้อง: แม้ว่าการแทนที่ "ค่าผิดปกติ" โดยค่าเฉลี่ยจะรักษาค่าเฉลี่ยของชุดข้อมูลไว้ แต่มันก็เปลี่ยนแปลงเกือบทุกสถิติอื่น ๆ มันยังเปลี่ยนการประมาณการข้อผิดพลาดมาตรฐานของค่าเฉลี่ย ดังนั้น - ในการสนับสนุนความคิดเห็นของ @Peter Flom ชุดข้อมูลที่ได้นั้นไม่ได้มีประโยชน์สำหรับการอนุมานใด ๆ ที่เชื่อถือได้ (อาจใช้ไม่ได้ในสิทธิ์ของตนเอง แต่ในขั้นตอนกลางในขั้นตอนการวนซ้ำเพื่อระบุค่าผิดปกติดังนั้นจึงอธิบายว่าทำไมกระบวนการดังกล่าวอาจเกิดขึ้นได้ตั้งแต่แรก)
whuber

1
@whuber เห็นได้ชัดว่าเป็นประเด็นสำคัญ ฉันจะทำให้เป็นคำตอบอื่น ๆ เพื่อไม่ให้ใครก็ตามที่อ่านหัวข้อนี้เร็วเกินไป ผู้คนถูกล่อลวงโดยอุปกรณ์นี้และมีบางอย่างที่จำเป็นต้องตระหนักว่ามันเป็น (a) ไม่ใช่ความคิดที่ดี (b) ความคิดที่ไม่ดี
Nick Cox

1
@ user2357112 ความหมายคือค่าเฉลี่ยที่ใช้คือค่าเฉลี่ยของค่าอื่น ๆ ไม่ควรรวมค่าผิดปกติที่ไม่น่าเชื่อถือไว้ในการคำนวณ
Nick Cox

คำตอบ:


41

เห็นได้ชัดว่าเป็นไปได้ แต่ไม่ชัดเจนว่าเป็นความคิดที่ดี

เรามาดูวิธีการแก้ปัญหาที่ จำกัด หรือบกพร่องกันหลายวิธี:

  • ผลที่ตามมาคือคุณกำลังบอกว่าค่านอกนั้นไม่น่าเชื่อถืออย่างสมบูรณ์เท่าที่คุณคาดเดาได้เท่านั้นว่าค่าควรเป็นค่าเฉลี่ย หากนั่นคือสิ่งที่คุณคิดว่ามีความเป็นไปได้ที่จะซื่อสัตย์มากกว่าที่จะละเว้นการสังเกตในคำถามเนื่องจากคุณไม่มีข้อมูลเพียงพอที่จะคาดเดาได้ดีกว่า

  • ไม่มีสิ่งใดที่กล่าวมาคุณต้องมีเกณฑ์หรือเกณฑ์สำหรับการระบุค่าผิดปกติตั้งแต่แรก (ตามที่ @Frank Harrell บอกเป็นนัย) มิฉะนั้นนี่เป็นกระบวนการโดยพลการและเป็นส่วนตัวแม้ว่ามันจะได้รับการปกป้องเป็นเรื่องของการตัดสิน ด้วยเกณฑ์บางอย่างเป็นไปได้ว่าการลบค่าผิดปกติด้วยวิธีนี้จะสร้างค่าผิดปกติมากขึ้นตามผลข้างเคียง ตัวอย่างอาจเป็นได้ว่าค่าผิดปกตินั้นมีค่าเบี่ยงเบนมาตรฐานมากกว่าค่าเฉลี่ย การลบค่าผิดเพี้ยนจะเปลี่ยนค่าเบี่ยงเบนมาตรฐานและจุดข้อมูลใหม่อาจมีสิทธิ์ได้แล้วเป็นต้น

  • สันนิษฐานว่าค่าเฉลี่ยที่นี่หมายถึงค่าเฉลี่ยของค่าอื่นทั้งหมดซึ่งเป็นจุดที่ชัดเจนโดย @David Marx ความคิดนั้นคลุมเครือโดยไม่มีข้อกำหนดนี้

  • Using the mean may seem a safe or conservative procedure, but changing a value to the mean will change almost every other statistic, including measures of level, scale and shape and indicators of their uncertainty, a point emphasized by @whuber.

  • The mean may not even be a feasible value: simple examples are when values are integers, but typically the mean isn't an integer.

  • Even with the idea that using a summary measure is a cautious thing to do, using the mean rather than the median or any other measure needs some justification.

  • Whenever there are other variables, modifying the value of one variable without reference to others may make a data point anomalous in other senses.

จะทำอย่างไรกับค่าผิดปกติเป็นคำถามที่เปิดกว้างและยากมาก การแก้ปัญหาและกลยุทธ์ที่แตกต่างกันมีการอุทธรณ์ที่แตกต่างกัน นี่คือรายการความเป็นไปได้บางส่วน การสั่งซื้อโดยพลการและไม่ได้หมายถึงการส่งคำสั่งใด ๆ ในแง่ของการบังคับใช้ความสำคัญหรือเกณฑ์อื่น ๆ หรือวิธีการเหล่านี้เป็นพิเศษร่วมกัน

  • หนึ่ง (ในมุมมองของฉันดี) นิยามคือ "[o] utliers เป็นค่าตัวอย่างที่ทำให้เกิดความประหลาดใจที่เกี่ยวข้องกับส่วนใหญ่ของกลุ่มตัวอย่าง" (WN Venables และ BD Ripley 2002. สถิติประยุกต์สมัยใหม่กับ S. New York: Springer, p.119) อย่างไรก็ตามความประหลาดใจอยู่ในใจของผู้ดูและขึ้นอยู่กับข้อมูลโดยปริยายหรือรูปแบบที่ชัดเจน อาจมีรูปแบบอื่นซึ่งค่าผิดปกติไม่น่าแปลกใจเลยดังนั้นข้อมูลจึงเป็น lognormal หรือ gamma มากกว่าปกติ กล่าวโดยย่อคือเตรียมพร้อมที่จะพิจารณาแบบจำลองของคุณอีกครั้ง

  • เข้าไปในห้องปฏิบัติการหรือสนามและทำการวัดอีกครั้ง บ่อยครั้งที่สิ่งนี้ไม่สามารถนำมาใช้ได้จริง แต่ดูเหมือนว่าจะเป็นมาตรฐานในหลาย ๆ วิทยาศาสตร์

  • ทดสอบว่าผิดปกติเป็นของแท้หรือไม่ การทดสอบส่วนใหญ่ดูจะสวยสำหรับฉัน แต่คุณอาจพบว่าคุณสามารถเชื่อได้ว่าเหมาะกับสถานการณ์ของคุณ ศรัทธาที่ไม่มีเหตุผลว่าการทดสอบที่เหมาะสมนั้นมีความจำเป็นเสมอที่จะใช้การทดสอบที่นำเสนอแล้วว่ามีเหตุผลอย่างมีเหตุผล

  • โยนพวกเขาออกมาเป็นเรื่องของการตัดสิน

  • โยนพวกเขาออกโดยใช้กฎอัตโนมัติมากขึ้นหรือน้อยลง (มักจะไม่ "วัตถุประสงค์")

  • ไม่สนใจพวกเขาบางส่วนหรือทั้งหมด สิ่งนี้อาจเป็นทางการ (เช่นการตัดแต่ง) หรือเพียงแค่ทิ้งไว้ในชุดข้อมูล แต่ไม่รวมการวิเคราะห์ที่ร้อนเกินกว่าจะจัดการได้

  • ดึงพวกเขาโดยใช้การปรับเปลี่ยนบางอย่างเช่น Winsorizing

  • Downplay พวกเขาโดยใช้วิธีการประมาณค่าอื่น ๆ ที่มีประสิทธิภาพ

  • Downplay พวกเขาโดยการทำงานในระดับแปลง

  • ดาวน์ไลท์พวกเขาโดยใช้ฟังก์ชั่นการเชื่อมโยงที่ไม่ใช่ตัวตน

  • รองรับพวกเขาด้วยการกระจายไขมันที่เหมาะสม, ยาว, หรือหนักที่เหมาะสมโดยไม่มีหรือมีตัวทำนาย

  • รองรับโดยใช้ตัวบ่งชี้หรือตัวแปรจำลองเป็นตัวทำนายพิเศษในโมเดล

  • ขั้นตอนด้านปัญหาโดยใช้ขั้นตอนที่ไม่ใช่พารามิเตอร์ (เช่นตามอันดับ)

  • รับการจัดการกับความไม่แน่นอนโดยนัยโดยใช้ขั้นตอน bootstrapping, jackknifing หรือการเปลี่ยนแปลงตาม

  • แก้ไขเพื่อแทนที่ค่าผิดปกติด้วยค่าที่เป็นไปได้มากกว่าโดยขึ้นอยู่กับตรรกะที่กำหนดขึ้น "ยายอายุ 18 ปีไม่น่าจะเป็นไปได้ แต่คนที่เกิดในปี 1932 นั้นน่าจะเป็นคน 81 คน"

  • แก้ไขเพื่อแทนที่ค่าผิดปกติที่เป็นไปไม่ได้หรือเป็นไปไม่ได้โดยใช้วิธีการใส่ความคิดบางอย่างซึ่งขณะนี้เป็นที่ยอมรับในเวทย์มนตร์ที่ค่อนข้างไม่ขาว

  • วิเคราะห์โดยใช้และไม่เห็นและเห็นความแตกต่างของค่าที่ทำ (s) สถิติสถิติวิทยาศาสตร์หรือในทางปฏิบัติ

  • Something Bayesian. My prior ignorance of quite what forbids from giving any details.

EDIT This second edition benefits from other answers and comments. I've tried to flag my sources of inspiration.


1
(+1) nice answer. On the Bayesian side, one might do many things, but in effect you're trying to build some model for how you came to have such values (the process that led to the outlier). For example, it may be something simple like "each data value has some small unknown probability of being from a distribution that's a lot wilder than the bulk of the data" and then putting a prior distribution on that probability and formalizing some choice for that wilder distribution and priors for its parameters. The effect is to down-weight the impact of points that don't fit the model.
Glen_b -Reinstate Monica

16

There are several problems implied by your question.

  1. What is an "outlier"?
  2. Should an "outlier" be replaced?
  3. What is special about the mean as opposed to some other estimate?
  4. How would you compensate to increase the apparent variance upon replacement by a single value that causes the variance too small?
  5. Why not use robust estimators that are resistant to outliers?
  6. Is this an independent or a dependent variable?

None of 1-5 have an obvious answer. If you really feel that these "outliers" are wrong and you don't want to use a robust statistical method, you can make them missing and use multiple imputation as one possible solution. If the variable is a dependent variable, one robust choice is ordinal regression.


1
+1, good points. I'm intrigued by the OLR suggestion; is there a reason you prefer that to using a robust loss function such as Tukey's bisquare?
gung - Reinstate Monica

2
Ordinal regression is probably a bit more robust than that, and allows for estimation of well-defined quantities: means, quantiles, and probabilities. In addition you have all the power of likelihood ratio, Wald, and score tests and confidence intervals. Estimates of median Y and mean Y in ordinal regression are not redundant, i.e., they are not trivially connected but are allowed to "float" because of fewer distributional assumptions.
Frank Harrell

9

The proposal has numerous flaws in it. Here is perhaps the biggest.

Suppose you are gathering data, and you see these values:

2,3,1

The mean, so far is 6/3=2.

Then comes an outlier:

2,3,1,1000

So you replace it with the mean:

2,3,1,2

The next number is good:

2,3,1,2,7

Now the mean is 3. Wait a minute, the mean is now 3, but we replaced 1000 with a mean of 2, just because it occurred as the fourth value. What if we change the order of the samples?

2,3,1,7,1000

Now the mean prior to the 1000 is (2+3+1+7)/4=13/4. So should we replace 1000 with that mean?

The problem is that the false datum we are substituting in place of 1000 is dependent on the other data. That's an epistemological problem if the samples are supposed to represent independent measurements.

Then you have the obvious problem that you not merely withholding data that doesn't fit your assumptions, but you're falsifying it. When some unwanted result occurs, you increment n, and substitute a fake value. This is wrong because n is supposed to be the count of samples. Now n represents the number of samples, plus the number of fudge values added to the data. It basically destroys the validity of all calculations involving n: even those which do not use the fudge values. Your n is a fudge value too!

Basically, trimming away results that don't fit is one thing (and can be justified if it is done consistently according to an algorithm, rather than according to changing mood swings of the experimenter).

Outright falsifying results is objectionable on philosophical, epistemological and ethical grounds.

There may be some extenuating circumstances, which have to do with how the results are used. Like for instance, say that this substitution of outliers by the current mean is part of some embedded computer's algorithm, which enables it to implement a closed-loop control system. (It samples some system outputs, then adjusts inputs in order to achieve control.) Everything is real time, and so something must be supplied for a given time period in the place of missing data. If this fudging helps to overcome glitches, and ensures smooth operation, then all is good.

Here is another example, from digital telephony: PLC (packet loss concealment). Crap happens, and packets get lost, yet communication is real time. PLC synthesizes fake pieces of voice based on recent pitch information from correctly received packets. So if a speaker was saying the vowel "aaa" and then a packet was lost, PLC can pad the missing packet by extrapolating the "aaa" for the frame duration (say 5 or 10 milliseconds or whatever). The "aaa" is such that it resembles the speaker's voice. This is analogous to using a "mean" to substitute for values regarded as bad. It's a good thing; it's better than the sound cutting in and out, and helps intelligibility.

If the fudging of data is part of a program of lying to people to cover up failing work, that's something else.

So, we cannot think about it independently of the application: how is the statistics being used? Will substitutions lead to invalid conclusions? Are there ethical implications?


The telephony story is very interesting, but it seems a matter of defensible interpolation to replace missing values. The connection with outlier replacement is tenuous, as only purely local operations are needed and local changes are secondary to the "analysis" of the entire dataset.
Nick Cox

2
Plenty of interesting ideas here (+1). Note, though, that the replacement procedure is not necessarily sequential. One can identify all "outliers" at once and replace all of them with the mean of the remainder. This is a consistent procedure not unlike Winsorizing.
whuber

6

This article by Cousineau and Chartier discusses replacing outliers with the mean

http://www.redalyc.org/pdf/2990/299023509004.pdf

They write:

Tabachnick and Fidell (2007) suggested replacing the missing data with the mean of the remaining data in the corresponding cell. However, this procedure will tend to reduce the spread of the population, make the observed distribution more leptokurtic, and possibly increase the likelihood of a type-I error. A more elaborate technique, multiple imputations, involves replacing outliers (or missing data) with possible values (Elliott & Stettler, 2007; Serfling & Dang, 2009).

There is also an R package "outliers" that has a function to replace outliers with the mean. I also saw a number of hits in my Google search that implies that SPSS also has such a function, but I am not familiar with that program. Perhaps if you follow the threads you can discover the technical basis for the practice.

References

  • Cousineau, D., & Chartier, S. (2010). Outliers detection and treatment: a review. International Journal of Psychological Research, 3(1), 58-67.

I searched your reference for all occurrences of the word "mean" and could find no place where it discusses replacing outliers with the mean. If I missed something, could you indicate more precisely where this discussion occurs?
whuber

1
I changed the link because I could not get it to work. On page 9 of the document the author says "Outliers that are clearly the result of a spurious activity should be removed. However, in multivariate designs, doing so may result in removing too many participants to the point that the analysis can no longer be performed. Tabachnick and Fidell (2007) suggested replacing the missing data with the mean of the remaining data in the corresponding cell."
Thomas

2
Thanks: I see it now. However, describing this as a "discussion"--which suggests there may be some balancing of pros and cons--may be somewhat misleading, because this passage mentions the mean-substitution procedure (a) only for multivariate applications and (b) solely to point out its defects, winding up with a suggestion to consider multiple imputation instead. (Interestingly, the paper's reference for this procedure does not even appear in its bibliography.)
whuber

5
Yes it is odd that the cited reference is not in the bib. It appears to be the book "Experimental Designs Using ANOVA." I was trying to respond to the original request and provide references for the practice of substituting the mean for outliers. That paper was all I could find in a quick search and I hoped it could provide leads so that the OP could find a more complete answer.
Thomas

4

The main thing to bear in mind when dealing with outliers is whether they're providing useful information. If you expect them to occur on a regular basis then stripping them out of the data will guarantee that your model will never predict them. Of course, it depends what you want the model to do but it's worth bearing in mind that you shouldn't necessarily drop them. If they contain important information you may want to consider a model that can account for them. One, simple way to do that is to take logs of the variables, which can account for power law relationships. Alternatively, you could use a model that accounts for them with a fat-tailed distribution of errors.

If you do want to cut them out then the usual ways are to either drop them or Winsorise them to remove the extreme values. I don't have a textbook to hand but the Wiki links there do refer to some if you want to read further. Most texts on applied statistics should have a section on outliers.


3

I'm aware of two related similar approaches in statistics.

  • Trimmed means: when computing the mean, you drop the smallest and largest observations of your data (e.g. the top and bottom 1 each; you should do this symmetrically!)
  • Winsorization: similar to the trimmed mean, you only modify extreme observations. However, instead of dropping them, you replace them with the largest/smallest non-extreme observation. This often works slightly better than trimming.

For more detailed examples, see Wikipedia:

https://en.wikipedia.org/wiki/Trimmed_estimator

https://en.wikipedia.org/wiki/Winsorising

Note that this works good for some statistics such as when computing the mean. The trimmed / winsorized mean is often a better estimate of the true mean than the artihmetic average. In other cases, it may ruin your statistics. For example when computing variance, trimming will always underestimate your true variance. Winsorization, assuming that indeed some of the extreme observations are faulty, will work a bit better then (it will probably still underestimate, but not by as much).

I don't see how replacing the extreme values with the mean would fit in here.

However, there is another practice that is related: missing value imputation. Assuming that your outlier is flawed, worthless data, so your remove it. When you then perform imputation, a typical substitute value would be the mean or mode:

https://en.wikipedia.org/wiki/Imputation_%28statistics%29


1
Trimming asymmetrically is a known and defensible tactic.
Nick Cox

2

The traditional approach for handling outliers is to simply remove them such that your model is trained only on "good" data.

Keep in mind that the mean value is affected by the presence of those outliers. If you replace outliers with the mean calculated after the outliers were removed from your dataset, it will make no difference since the regression line (from simple linear regression) will pass through the mean of your training data anyway (this will reduce the variance of your estimates though, which is probably the opposite of what you want given that you know there are outliers).

The effect your approach will have on the model depends on the influence (leverage) of the outlier. I'd recommend against the approach you suggest in lieu of just removing the point entirely.


4
Removal of data will cause a bias unless the procedure for removal is objective and that same procedure will be applied to all future data for which predictions are obtained.
Frank Harrell

0

yes the outliers can be replaced in may forms, for example, let's take a data-set of the size of Human heights, let's say we have some outliers like 500 cm and 400 cm then, we can just replace those data points that appear in the dataset because of some error that was caused during the recording of the data. so the options you can try is 1. replace it with the Median of the Whole color of the data (not the mean, as it is prone to outliers). 2. replace with the most Occurring data point in the Column. 3. If Categorial values then you can try Response coding.(wherein you Record the Probability of the word or the values occurring by the total number of words )

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.