# How to exclude events with low data (eg. threshold, outliers)

I have this data set and I want to filter only "Event" with a good conversion rate.

We can say that good are those that have a higher than average conversion (but maybe you have better ideas).

Since the average conversion is 0.8% I will also select those events with too little data (eg Impressions = 1 or impressions = 10).

What formula can I use to quickly exclude events with too little data and set a minimum threshold for impressions? I can't use an hard-coded threshold because it has to be different for each account. Impressions/clicks are not normally distributed. Maybe long-tail distribution makes more sense.

Without knowing more about your objective, it is difficult to suggest a suitable criterion that could be used for all accounts. But here are some ideas. [Computations in R.]

In your example, 'impressions' are

x = c(1563, 400, 100, 1400, 1, 10)


Sorted data are

sort(x)
[1]    1   10  100  400 1400 1563


So you might throw out a row in your table if: (a) the impression count is to low to matter, perhaps below 20; (b) the impression count is among a client's lowest 25% of impressions, which is below about 30 in your example; (c) if the number of impressions is a low outlier, which in your example, disregards nothing. (I'm using the "boxplot 1.5 IQR rule" for outliers.) This would work better with more data, say at least a dozen rows.)

quantile(x, .25)
25%
32.5

boxplot(x, horizontal=T)


Then, having disregarded rows with too few impressions, you might use another criterion to pick "relatively good" conversion rates for each client.

In your example, suppose now that rows F, G, and H are gone on account of low impression counts.

That might be anything: (a) at or above the median (1.3); (b) at or above the 75th quantile (10); (c) more than one SD above the mean (18). [Even if you had enough data to show outliers, I think requiring a high outlier in order to be called "reasonably good" is too harsh a test.]

y = c(1.3, 10, 24, .4, .5)
median(y);  quantile(y, .75)
[1] 1.3
75%
10
mean(y) + sd(y)
[1] 17.43819
mean(y)
[1] 7.24


[Notice that with rows F, G, and H gone, the average conversion rate is now down to 7.24.]

Even if you don't like my specific suggestions, based on quick orientation and only one dataset, maybe you will find something useful in the general approach.

• Thank you for your answer. What can help me decide to choose between: a) above the median c) Mean + 1 SD ? – user1028100 Sep 3 at 13:54
• Don't know for sure. You know the data better than I do from one example. // It's a matter of getting the feel of which criterion comes closest to giving the results you want. Try both methods on data for several clients of varying types. Then pick a method, and possibly modify it. Examples of modifications might be to use 60th percentile instead of median or $\bar X + .5 S$ instead of $\bar X + S.$ Maybe different criteria for distinctly different kinds of clients. Maybe fine-tune over time. – BruceET Sep 3 at 18:12