The Data Cleaning Problem: Some Key Issues & Practical - - PDF document

the data cleaning problem some key issues practical
SMART_READER_LITE
LIVE PREVIEW

The Data Cleaning Problem: Some Key Issues & Practical - - PDF document

The Data Cleaning Problem: Some Key Issues & Practical Approaches Ronald K. Pearson Daniel Baugh Institute for Functional Genomics and Computational Biology Department of Pathology, Anatomy, and Cell Biology Thomas Jefferson University


slide-1
SLIDE 1

The Data Cleaning Problem: Some Key Issues & Practical Approaches Ronald K. Pearson Daniel Baugh Institute for Functional Genomics and Computational Biology Department of Pathology, Anatomy, and Cell Biology Thomas Jefferson University Philadelphia, PA DIMACS Workshop on Data Quality, Data Cleaning and Treatment of Noisy Data November 3-4, 2003

1

slide-2
SLIDE 2

Topics

  • 1. Outliers: an important data anomaly
  • types and working assumptions
  • some real data examples
  • 2. Detecting outliers
  • the popular 3σ edit rule
  • order-statistics vs. moments
  • some alternative approaches
  • 3. Other data anomalies
  • missing data
  • misalignments
  • noninformative variables
  • comparing performance

2

slide-3
SLIDE 3

Example 1: Outlier in a microarray data sequence

Sample Log2 Intensity Ratio 5 10 15

  • 1

1 2 3 4

Dye swap average of log2 intensity ratios, gene 263

Control EtOH <<-- Outlier

3

slide-4
SLIDE 4

Example 2: Influence of outliers on a volcano plot

t-test P-value Log2 Expression Change 0.005 0.010 0.050 0.100 0.500 1.000

  • 1.0
  • 0.5

0.0 0.5 1.0

Log2 expression change vs. p-value, Genes 201 to 300

4

slide-5
SLIDE 5

Example 3: Bivariate outlier in a simulated dataset NOTE: Outlier is not extreme with respect to either x or y individually

x(k) value y(k) value 0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0 OUTLIER -->>

5

slide-6
SLIDE 6

Example 4: Bivariate outliers in a real dataset MA plot constructed from an uncorrected microarray dataset

  • • •
  • • •
  • • •
  • ••
  • •• •
  • • •
  • ••
  • • ••
  • • •
  • ••
  • ••
  • ••
  • •••
  • ••
  • • •
  • • •
  • • •
  • • •
  • • •
  • • • •
  • • • •
  • ••
  • • •
  • ••
  • • ••
  • • • •
  • ••
  • • •
  • • •
  • • ••
  • • •
  • • •
  • • •
  • • ••
  • • •
  • • •
  • •••
  • ••
  • • •
  • •••
  • •••
  • • •
  • ••
  • • •
  • • •
  • • •
  • • •
  • • •
  • • ••
  • • • •
  • • •
  • • ••
  • • •
  • • ••
  • • •
  • • •
  • • • •
  • • •
  • • •
  • • •
  • •• •
  • ••
  • ••
  • • •
  • • •
  • • •• •
  • • •
  • • •
  • • •
  • ••
  • • •
  • • •
  • ••
  • ••
  • ••
  • • •
  • • •
  • •• •
  • ••
  • ••
  • • ••
  • • ••
  • • • •
  • •• •
  • ••
  • ••
  • • •
  • • •
  • • •
  • • ••
  • • •
  • • •
  • • •• •
  • • ••
  • • •
  • • •
  • ••
  • • •
  • • •
  • • •
  • ••
  • ••
  • • ••
  • • ••
  • ••
  • • •
  • • •
  • ••
  • ••
  • • • •
  • • •
  • • •
  • • •
  • • •
  • ••
  • •• •
  • • •
  • • •
  • • •
  • ••
  • • •
  • ••
  • • •
  • • •
  • ••
  • • •
  • •• •
  • • •
  • ••
  • ••
  • ••
  • ••
  • • •
  • • •
  • • •
  • • •
  • • •
  • ••
  • ••
  • • •
  • ••
  • • •
  • • •
  • • •
  • • •
  • • •
  • • •
  • • ••
  • • • •
  • • •
  • • •
  • • •
  • • •
  • • •
  • •• •
  • • ••
  • •• • •
  • ••
  • • •
  • • •
  • •• •
  • • •
  • • • •
  • • •
  • • ••
  • • •
  • • •
  • ••
  • • •
  • ••
  • • •
  • • •
  • • •
  • • •
  • ••
  • • • •
  • • • •
  • • •
  • ••
  • • •
  • • • •
  • ••
  • • •
  • ••
  • • •
  • • •
  • • •
  • • ••
  • • •
  • • •
  • • •
  • • • • •
  • •••
  • ••
  • ••
  • • •
  • ••
  • • •
  • • ••
  • ••
  • • •
  • ••
  • • •
  • ••
  • • •
  • • •
  • • •
  • •• •
  • ••
  • • •
  • • •
  • •••
  • • •
  • • •
  • ••
  • • •
  • • •
  • ••
  • • •
  • • •
  • • •
  • • ••
  • • •
  • • •
  • ••
  • ••
  • • •
  • • •• ••
  • • •
  • • •
  • ••
  • •• •
  • ••
  • • •
  • • •
  • ••
  • • •
  • • •
  • • •
  • ••
  • ••
  • ••
  • • •
  • • •
  • ••
  • ••
  • • •
  • ••
  • •• •
  • • •
  • • • •
  • ••
  • • ••
  • ••
  • • • •
  • • •
  • • •
  • • •
  • ••
  • ••
  • • •
  • ••
  • ••
  • •••
  • • • •
  • • •
  • ••
  • • •
  • • •
  • ••
  • • ••
  • • ••
  • • •
  • • •
  • ••
  • •• •
  • •••
  • ••
  • •• •
  • • •
  • •• •
  • ••
  • • •
  • • •
  • • •
  • • •
  • • •
  • • ••
  • ••
  • • • ••
  • • •
  • • •
  • Log2 Geometric Mean Intensity

Log2 Intensity Ratio 5 10 15 20 25

  • 10

10 20

6

slide-7
SLIDE 7

Example 5: Multivariate outliers in material property relationships NOTE: Here, outliers correspond to unusually good materials

Permeability Selectivity 1 2 3 4 5 6 2 4 6 8 1980 Limit 1991 Limit FTN’s -->>

7

slide-8
SLIDE 8

Example 6: Common mode outlier example NOTE: Univariate outliers can be highly correlated in different variables

Time, k Property Value, Q(k) 20 40 60 80 100 50 100 150 200

Raw Inlet Data

Time, k Property Value, Q(k) 20 40 60 80 100 185 190 195 200

Cleaned Inlet Data

Time, k Property Value, Q(k) 20 40 60 80 100 50 100 150 200 250

Raw Outlet Data

Time, k Property Value, Q(k) 20 40 60 80 100 240 244 248 252

Cleaned Outlet Data

8

slide-9
SLIDE 9

The 3σ Edit Rule

  • Procedure:

|xk − ¯ x| > 3ˆ σ ⇒ xk is an outlier

  • Motivation:
  • 1. the Gaussian assumption xk ∼ N(µ, σ2) is

very popular

  • 2. under this assumption:

Prob {|xk − µ| > 3σ} ∼ 0.3%

  • History:

– dates back at least a century:

  • T. Wright, A Treatise on the Adjustment of

Observations by the Method of Least Squares, Van Nostrand, 1884

– still advocated today:

  • S. Draghici, Data Analysis Tools for DNA

Microarrays, Chapman and Hall/CRC, 2003 9

slide-10
SLIDE 10

A Spectacular Failure: The flow rate dataset NOTE: This dataset contains ∼ 20% visually

  • bvious outliers: none are detected by the

3σ edit rule

  • Hour, k

Flow Rate, R(k) 500 1000 1500 2000 2500

  • 200

200 400 600 800

10

slide-11
SLIDE 11

Why?

  • Basic reason:

– the mean µ and standard deviation σ are unknown and must be estimated from data standard estimators are extremely sensitive to the presence of outliers

  • Specific observation:

At point contamination levels greater than 10%, the 3σ edit rule will fail completely: no outliers will be detected

  • To overcome this problem:
  • 1. replace the mean with an outlier-resistant

alternative (e.g., median)

  • 2. replace the standard deviation with an
  • utlier-resistant alternative (e.g., MAD)

11

slide-12
SLIDE 12

Outlier Sensitivity of Standard Moment Estimators: Mean, variance, and skewness

  • 2

2 4 6 8 10 0% 1% 5% 15% 0% 1% 5% 15% 0% 1% 5% 15% 1st Moment 2nd Moment Error Normalized 3rd Moment

12

slide-13
SLIDE 13

Order-based Alternatives: Median, square of interquartile distance, Galton’s skewness

  • 2

2 4 6 8 10 0% 1% 5% 15% 0% 1% 5% 15% 0% 1% 5% 15% Median Squared IQD Error Galton’s Skewness

13

slide-14
SLIDE 14

The Hampel Identifier

  • Idea:

– replace the mean ¯ x with the

  • utlier-resistant median x†

– replace the standard deviation ˆ σ with the

  • utlier-resistant MAD scale estimate S
  • The MAD scale estimate:

S = 1.4826 median {|xk − x†|}

  • Interpretation:

– dk = |xk − x†| measures the distance of each point xk from the reference value x† – the median dk value tells how far a “typical” point lies from x† – the factor 1.4826 makes S an unbiased estimate of σ for Gaussian data

14

slide-15
SLIDE 15

The Flow Rate Dataset Revisited The Hampel identifier provides a clean separation between normal

  • peration and shutdown episodes
  • Hour, k

Flow Rate, R(k) 500 1000 1500 2000 2500

  • 200

200 400 600 800

15

slide-16
SLIDE 16

The Boxplot Edit Rule

  • Symmetric version:

– like Hampel identifier, replace ¯ x with x† – replace ˆ σ with the outlier-resistant interquartile distance Q

  • Quartiles:

– xU = upper quartile ⇒ 75% of data values lie below this observation – xL = lower quartile ⇒ 25% of data values lie below this observation – Q = xU − xL Asymmetric version: – xk < xL − tQ ⇒ lower outlier – xk > xU + tQ ⇒ upper outlier

16

slide-17
SLIDE 17

Asymmetric Example: The industrial pressure dataset Comparison of three outlier detection rules

200 400 600 800 100 200 300 400 500

Three Sigma Rule

200 400 600 800 100 200 300 400 500

Hampel Identifier

200 400 600 800 100 200 300 400 500

Asymmetric Boxplot Rule

17

slide-18
SLIDE 18

Mis . . . ing Data

  • Problem: some xk values are unavailable

– ignorable case: increases variability nonignorable case: introduces bias → 1936 Literary Digest election poll

  • Autocorrelation example:

˜ Rxx(k) = 1 |S|

  • ℓ∈S

xℓxℓ+k – S = random subset of {1, 2, . . . , N} ⇒ ignorable case: causes increased variability

  • f Rxx(k) estimates

– S = even k only ⇒ non-ignorable case: cannot estimate Rxx(k) for any odd k

  • Additional consequences:

– missing values can be converted into

  • utliers (storage tank example)

– missing values can cause misalignments

18

slide-19
SLIDE 19

Misalignment: Four corrupted data sequences caused by unexpected “blank” records NOTE: Difficulty of detection varies strongly from

  • ne variable to another
  • Record Number

Gene Index 1000 1500 2000 2500 3000 3500 500 1500 2500

Gene Index vs. Record Number

  • Record Number

Array Row 1000 1500 2000 2500 3000 3500 0.0 1.0 2.0 3.0

Array Row vs. Record Number

  • Record Number

X Location 1000 1500 2000 2500 3000 3500 5000 10000 15000

X Location vs. Record Number

  • Record Number

Log2 Intensity 1000 1500 2000 2500 3000 3500 5 10 15 20

Log2 Intensity vs. Record Number

19

slide-20
SLIDE 20

The CAMDA Challenge Dataset

  • CAMDA: Critical Assessment of Microarray

Data Analysis – annual data analysis competition – CAMDA 2002 challenge datsets:

  • 1. Latin square Affymetrix benchmark
  • 2. normal mouse cDNA microarray study
  • Structure of the normal mouse dataset:

– derived from 72 individual microarrays – 3 organ samples from each of 6 mice – 4 microarrays per sample – 2 channels per microarray: reference & experimental reformated into three organ-specific summary datasets

20

slide-21
SLIDE 21

The CAMDA Challenge Dataset

  • Stivers et al. obtained anomalous results from

a preliminary principal components analysis – expected clustering: common reference cluster, 3 organ clusters – observed: unreasonable splitting of the reference cluster – subsequently observed: disagreements of gene ID/slide position combinations between different organ datasets

  • What happened?

– 1932 of 5304 genes were mis-annoted – cause: error in procedure that combined the 72 individual microarray datasets into 3 organ-specific summary datasets

21

slide-22
SLIDE 22

Softwear Errors

  • Source of both misalignment examples:
  • 1. inconsistent handling of missing values

between Excel and S-plus

  • 2. (Stivers et al.):

The data used here were assembled into packages, probably manually using ad hoc database, spreadsheet, or perl script. Under these conditions, it is remarkably easy for the row order to be changed accidentally . . .

  • Some relevant observations:
  • 1. Wall, et al. (2000):

It is a standing joke in the Perl community that the next big stock market crash will probably be caused by a bug in someone’s Perl script.

  • 2. Kanert et al. (1999):

About one in three attempts to fix a program doesn’t work or causes a new problem.

  • 3. Beizer (1990):

estimates between 1 and 3 errors per 100 executable statements, after the code has been debugged 22

slide-23
SLIDE 23

Noninformative Variables

  • Externally noninformative variables:

– variables xk that are a priori irrelevant Murphy’s law: irrelevant variables sometimes aren’t – R.W. McClure’s example

  • Inherently noninformative variables:

– completely missing variables – constant variables – exact duplicate variables

  • Application-irrelevant variables:

– e.g., variables that become inherently noninformative when analysis is restricted to a subset of interest – specific example: anomaly indicator variables in the analysis of nominal data – (sometimes:) noise variables Why is this important?

23

slide-24
SLIDE 24

A Clustering Example

  • Eight datasets compared:

– k = 4 well-separated clusters – three informative components in each attribute vector xk – 0 to 7 non-informative components in xk

  • Clustering procedure:

– Partitioning Around Medoids (PAM) - Kaufman and Rousseeuw (1987) – better-behaved alternative to k-means

  • Performance assessment:

– average silhouette coefficient (Kaufman and Rousseeuw, 1987) – assesses both intracluster cohesion and intercluster separation – bounded between −1 (horrible misclassification) and +1 (perfect classification)

24

slide-25
SLIDE 25

Clustering Results: Influence of noninformative variables Average silhouette coefficients ¯ s k = 2 ⇒ spurious clustering k = 4 ⇒ correct clustering

Noise ¯ s, ¯ s, Components k = 2 k = 4 0.636 0.750 1 0.619 0.709 2 0.604 0.675 3 0.587 0.638 4 0.579 0.619 5 0.568 0.595 6 0.557 0.573 7 0.548 0.555 25

slide-26
SLIDE 26

A Final Example

  • Consider the effects of “small” deletions:

– datasets: four different 17 point sequences – deletions: all possible 2 point deletions ⇒   17 2   = 136 possible 15 point subsets

  • The data sequences:

0: uniformly distributed on [−1.1, 1.1] 1: 8 points uniformly distributed on [−1.1, −0.9], one zero value, 8 points uniformly distributed on [0.9, 1.1] 2: middle 5 points of Sequence 0 set to zero (one common missing data model) 3: Sequence 0 with 2 outliers, rescaled into

  • riginal [−1.1, 1.1] range
  • The scale estimates:
  • A. the standard deviation ˆ

σ

  • B. the interquartile distance Q
  • C. the MAD scale estimate S

26

slide-27
SLIDE 27

Four Simulated Data Sequences

Sample, k Data value, x(k) 5 10 15

  • 1.0
  • 0.5

0.0 0.5 1.0

Sequence 0

Sample, k Data value, x(k) 5 10 15

  • 1.0
  • 0.5

0.0 0.5 1.0

Sequence 1

Sample, k Data value, x(k) 5 10 15

  • 1.0
  • 0.5

0.0 0.5 1.0

Sequence 2

Sample, k Data value, x(k) 5 10 15

  • 1.0
  • 0.5

0.0 0.5 1.0

Sequence 3

27

slide-28
SLIDE 28

Scale Estimates: Consequences of all possible 2-point deletions

0.2 0.4 0.6 0.8 1.0 1.2 1.4 SD IQD MAD SD IQD MAD SD IQD MAD SD IQD MAD Sequence 0 Sequence 1 Sequence 2 Sequence 3

28

slide-29
SLIDE 29

Summary: Three Key Conclusions

  • 1. Unimaginable anomalies infest real datasets

Yogi Bera:

If something has a 50% chance of happening, then 9 times out of 10 it will. Dasu and Johnson (2003, p. 186): Take NOTHING for granted. The data are never what they are supposed to be, even after they are “cleaned up.” The schemas, layout, content, and nature of content are never completely known or documented and continue to change dynamically.

  • 2. Different analysis methods exhibit different

sensitivities to different data anomalies

  • 3. Comparison of what should be “equivalent”

analyses across different scenarios can be extremely useful in uncovering anomalies

29