2011-09-13 105 views
-2

我從ilumina網站下載了illumina註釋文件(文本)。當我想讀它拋出我一個錯誤:閱讀R中的分隔文件

[Error in data[[rowvar]] : attempt to select less than one element][1] 

下面是我用什麼代碼:

annotation=read.delim("MouseWG-6_V2_R3.txt", row.names="Array_Address_Id", dec=",") 

請不要任何人幫助我。

Here is link to the text file

+1

這裏的大多數人甚至不會知道Illumina什麼都不知道註釋文件是什麼。因此,如果您顯示文件的前幾行或給我們一個可以查看該文件的URL,它會有所幫助。否則,如果我們不知道該文件是什麼樣的,我們該如何幫助? –

+1

@Gavin Simpson:抱歉給我們帶來了不便。我用屏幕快照和鏈接重新編輯了文章,並下載了該文件。我的歉意。 – Dinesh

+0

那麼截圖沒有奏效 - 這個數字在網上沒有。我們不需要看R控制檯是什麼樣的 - 你給出的錯誤信息很好。這是我們需要看到的文件。我已經下載了我認爲是你使用的那個,並且會看一看。 –

回答

2

不能讀取與標準的R功能read.delim()read.table()該文件,因爲它不是在類似電子表格的格式 - 即,它不是由分隔符分隔的純表格數據。

該文件包含一個標題:

? Illumina, Inc. 
[Heading] 
Date 7/1/2010 
ContentVersion 2.0 
FormatVersion 1.0.0 
Number of Probes 45281 
Number of Controls 974 
[Probes] 

其中我們可以略過,但後來有AFER的[Probes]部分看起來像這樣另一部分:

[Controls] 
Probe_Id Array_Address_Id Reporter_Group_Name Reporter_Group_id Reporter_Composite_map Probe_Sequence 
ILMN_1380403 005860278 negative permuted_negative  GCGTATTGGCTGCTGGTCTTGACCAGTGCCGGAATTCCGCTCTGATATAG 
ILMN_1379274 000610201 negative permuted_negative  TGAATGAGAACTCTTGGCCCCGGCTCCTTTCACAAAGACGGTTAGCTTGG 
ILMN_1379161 004670735 negative permuted_negative  GGAGGCATGCCACCTCTTCCTACGAACAAGTCAGGAAACGGTTCGAAGCC 
ILMN_1379177 003400438 negative permuted_negative  TTCCAATTGGCACCAAGTCATACTCCCAGTCACAGGCTAGATCTCCCGAC 
ILMN_1379049 000730154 negative permuted_negative  GGAGGCTTTCCTGCTGTGCAGGCTGTTATCAAGGGATGCTGTATCTCGGG 

和進一步部分:

[Columns] 
Name Level Visible 
Species all 
Source all 
Search_Key all 
Transcript probe 
ILMN_Gene all 
Source_Reference_ID probe 
RefSeq_ID probe 
Unigene_ID all 
Entrez_Gene_ID all 
GI probe 
Accession probe 
Symbol all 
Protein_Product probe 
Probe_Id probe 
Array_Address_Id probe 
Probe_Type probe 
Probe_Start probe 
Probe_Sequence probe 
Chromosome all 
Probe_Chr_Orientation all 
Probe_Coordinates probe 
Definition all 
Ontology_Component all 
Ontology_Process all 
Ontology_Function all 
Synonyms all 

即使是Probes部分沒有看格式良好 - 有大量文本可能會導致問題,如果它們包含分隔符,因爲文本未加引號。

如果你可以拉出只是Probes部分,然後到一個文件中"filename.txt"

read.table("filename.txt", sep = "\t") 

看起來似乎讀取該文件作爲部分至少是製表符分隔。

+1

:我試圖通過刪除不需要的評論行,它爲我工作。感謝您及時help.I還需要一個更多的幫助..我有文本文件的列表,其中每個文件包含3列(ProbeID,AVG_Signal,Detection_Pvalue)。我想驗證兩個文件之間的ProbeID列是否匹配。但是,im有點困惑,並卡住了..你可以幫我嗎? – Dinesh

+0

@Thileepan提出新問題。評論實際上是針對未成年人的後續行動。 –