Search
Question: read.idat manifest error
0
gravatar for Gabriel Nathan Kaufman, Mr
2.3 years ago by
Canada

I am trying to read Illumina Human WG6v2 microarray raw IDAT files using the read.idat command implemented in the limma package. However, I encounter an error which seems to come from the BGX manifest file. When I indicate the correct BGX file, I obtain a read.idat error, as seen below in the code example (highlighted text). Could this be due to an incorrect BGX file? I obtained it directly from Illumina... Why else would the parser give this error?

 

Inter alia, I am able to read individual IDAT files using the readIDAT command in the illuminaio package. But I cannot seem to combine many IDAT files into an EList-raw class object...

 

---------------------

> library(limma)
> IDATfiles <- list.files(pattern ="\\.idat")
> read.idat(IDATfiles, bgxfile = "HumanWG-6_V2_0_R2_11223189_A.bgx")
Reading manifest file HumanWG-6_V2_0_R2_11223189_A.bgx ... Done
     4062786004_A_Grn.idat ... Done
Error in read.idat(IDATfiles, bgxfile = "HumanWG-6_V2_0_R2_11223189_A.bgx") : 
  Can't match ids in manifest with those in idat file4062786004_A_Grn.idat- please check that you have the right files
> sessionInfo()
R version 3.2.0 (2015-04-16)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.10.3 (Yosemite)

locale:
[1] en_CA.UTF-8/en_CA.UTF-8/en_CA.UTF-8/C/en_CA.UTF-8/en_CA.UTF-8

attached base packages:
[1] stats     graphics 
[3] grDevices utils    
[5] datasets  methods  
[7] base     

other attached packages:
[1] limma_3.24.10

loaded via a namespace (and not attached):
[1] base64_1.1       
[2] illuminaio_0.10.0
ADD COMMENTlink modified 2.2 years ago by Matthew Ritchie660 • written 2.3 years ago by Gabriel Nathan Kaufman, Mr60
1
gravatar for Mike Smith
2.3 years ago by
Mike Smith2.0k
EMBL Heidelberg / de.NBI
Mike Smith2.0k wrote:

I'm not sure I can answer you question directly, but are you sure you're using idats from a WG6v2 array?  

The beadarray package includes list of the IDs you'd expect to find on a variety of platforms, so you can try comparing against those.  The code below gives an example of how you might do that:

library(illuminaio)
library(beadarray)

## load ID lists
data(platformSigs)

## read idat file and get AA_IDs
idat <- readIDAT( IDATfiles[1] )
ids <- idat$Quants[,'CodesBinData']

## compare with reference IDs and rank by percentage identity
rks <- sapply(platformSigs, function(x) (sum(ids %in% x)/length(ids)) * 100)
sort(rks, decreasing = TRUE)
ADD COMMENTlink written 2.3 years ago by Mike Smith2.0k
0
gravatar for Matthew Ritchie
2.3 years ago by
Australia
Matthew Ritchie660 wrote:

If Mike's suggestion doesn't help, perhaps you can provide an idat file or two and the manifest you're using so that I can take a closer look.

ADD COMMENTlink written 2.3 years ago by Matthew Ritchie660

I am pretty sure that the IDAT files are indeed from WG6v2 arrays, since the readIDAT command from the illuminaio package returns "BeadChip 6x2" as the ChipType (console output copied below).

 

 

 

 

 

 

If Dr Ritchie or anyone else can take a closer look at the files themselves, I would be most grateful. I have uploaded four IDAT files and the BGX manifest file to Dropbox at this link:

https://www.dropbox.com/sh/pnstan1bl7c0wol/AAAMksTPUbyeCFvtXzbmMSFta?dl=0

 

---------------------

library(illuminaio)
IDAT1 <- readIDAT("4062786004_A_Grn.idat")
> IDAT1
$Barcode
[1] "4062786004"

$Section
[1] "A"

$ChipType
[1] "BeadChip 6x2"

$Quants

[data omitted for brevity]

$RunInfo
 Name       SoftwareApp  Version       
 "Decoding" "AutoDecode" "1.8.10"      
 "Scan"     "BeadScan"   "3.5.31.17122"
 "Register" "BeadScan"   "3.5.31.17122"
 "Extract"  "BeadScan"   "3.5.31.17122"
 "Decoding" "AutoDecode" "1.8.10"      
 "Scan"     "BeadScan"   "3.5.31.17122"
 "Register" "BeadScan"   "3.5.31.17122"
 "Extract"  "BeadScan"   "3.5.31.17122"
 Date                    
 "10/11/2007 10:26:18 PM"
 "10/17/2007 4:13:12 PM" 
 "10/17/2007 4:13:12 PM" 
 "10/17/2007 4:13:12 PM" 
 "10/11/2007 10:26:18 PM"
 "10/17/2007 4:19:06 PM" 
 "10/17/2007 4:19:06 PM" 
 "10/17/2007 4:19:06 PM" 
 Parameters                                                                                                    
 "CallsToUsed=1036040|CallsToUnused=178|CallsToInvalid=4780"                                                   
 "sherlockID=S161|Username=gtsill|HostVersion=3.5.31.17122|CPLDVersion=0x10000C1|PMTGainCY3=558|PMTGainCY5=549"
 "Algorithm=StandardGeneric"                                                                                   
 "Algorithm=StandardWithBackground"                                                                            
 "CallsToUsed=1055594|CallsToUnused=134|CallsToInvalid=3522"                                                   
 "sherlockID=S161|Username=gtsill|HostVersion=3.5.31.17122|CPLDVersion=0x10000C1|PMTGainCY3=558|PMTGainCY5=549"
 "Algorithm=StandardGeneric"                                                                                   
 "Algorithm=StandardWithBackground"
ADD REPLYlink written 2.3 years ago by Gabriel Nathan Kaufman, Mr60
0
gravatar for Matthew Ritchie
2.2 years ago by
Australia
Matthew Ritchie660 wrote:

Thanks for providing the example files.

The problem was caused by a single probe that was listed in the manifest file but wasn't in the idat file. Have added a new 'tolerance' argument to read.idat in the devel version of limma (v 3.25.13, should be available over the next few days) to handle this. In your case 'tolerance=1' should do the trick and this probe will have NAs in the expression matrix. I've set this argument to have a default of 0, i.e. we assume every probe listed in the manifest should generally be available in the idat as before. 

ADD COMMENTlink written 2.2 years ago by Matthew Ritchie660
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.2.0
Traffic: 176 users visited in the last hour